KILLED proof of input_FKIZCUPM3v.trs # AProVE Commit ID: aff8ecad908e01718a4c36e68d2e55d5e0f16e15 fuhs 20220216 unpublished The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). (0) CpxTRS (1) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxTRS (3) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (4) CpxTRS (5) RelTrsToWeightedTrsProof [UPPER BOUND(ID), 0 ms] (6) CpxWeightedTrs (7) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxTypedWeightedTrs (9) CompletionProof [UPPER BOUND(ID), 0 ms] (10) CpxTypedWeightedCompleteTrs (11) NarrowingProof [BOTH BOUNDS(ID, ID), 87 ms] (12) CpxTypedWeightedCompleteTrs (13) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (14) CpxRNTS (15) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (16) CpxRNTS (17) CompletionProof [UPPER BOUND(ID), 0 ms] (18) CpxTypedWeightedCompleteTrs (19) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (20) CpxRNTS (21) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (22) CdtProblem (23) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (24) CdtProblem (25) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (26) CdtProblem (27) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (28) CdtProblem (29) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (30) CdtProblem (31) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (32) CdtProblem (33) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (34) CdtProblem (35) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (36) CdtProblem (37) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 23 ms] (38) CdtProblem (39) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (40) CdtProblem (41) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (42) CdtProblem (43) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (44) CdtProblem (45) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (46) CdtProblem (47) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (48) CdtProblem (49) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 1 ms] (50) CdtProblem (51) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (52) CdtProblem (53) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (54) CdtProblem (55) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (56) CdtProblem (57) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (58) CdtProblem (59) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (60) CdtProblem (61) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (62) CdtProblem (63) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (64) CdtProblem (65) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (66) CdtProblem (67) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 23 ms] (68) CdtProblem (69) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (70) CdtProblem (71) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (72) CdtProblem (73) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (74) CdtProblem (75) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (76) CdtProblem (77) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (78) CdtProblem (79) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (80) CdtProblem (81) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (82) CdtProblem (83) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 11 ms] (84) CdtProblem (85) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (86) CdtProblem (87) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (88) CdtProblem (89) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (90) CdtProblem (91) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 12 ms] (92) CdtProblem (93) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (94) CdtProblem (95) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (96) CdtProblem (97) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (98) CdtProblem (99) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (100) CdtProblem (101) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (102) CdtProblem (103) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 11 ms] (104) CdtProblem (105) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 37 ms] (106) CdtProblem (107) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (108) CdtProblem (109) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (110) CdtProblem (111) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 18 ms] (112) CdtProblem (113) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (114) CdtProblem (115) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 3 ms] (116) CdtProblem (117) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 46 ms] (118) CdtProblem (119) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 10 ms] (120) CdtProblem (121) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (122) CdtProblem (123) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 86 ms] (124) CdtProblem (125) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (126) CdtProblem (127) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (128) CdtProblem (129) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 120 ms] (130) CdtProblem (131) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (132) CdtProblem (133) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (134) CdtProblem (135) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 104 ms] (136) CdtProblem (137) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (138) CdtProblem (139) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 146 ms] (140) CdtProblem (141) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 13 ms] (142) CdtProblem (143) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 136 ms] (144) CdtProblem (145) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (146) CdtProblem (147) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 211 ms] (148) CdtProblem (149) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 26 ms] (150) CdtProblem (151) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 231 ms] (152) CdtProblem (153) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (154) CdtProblem (155) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 99 ms] (156) CdtProblem (157) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 20 ms] (158) CdtProblem (159) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 10 ms] (160) CdtProblem (161) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (162) CdtProblem (163) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 145 ms] (164) CdtProblem (165) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 38 ms] (166) CdtProblem (167) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 166 ms] (168) CdtProblem (169) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 39 ms] (170) CdtProblem (171) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 168 ms] (172) CdtProblem (173) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 66 ms] (174) CdtProblem (175) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 321 ms] (176) CdtProblem (177) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 55 ms] (178) CdtProblem (179) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 457 ms] (180) CdtProblem (181) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 91 ms] (182) CdtProblem (183) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 286 ms] (184) CdtProblem (185) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 63 ms] (186) CdtProblem (187) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 294 ms] (188) CdtProblem (189) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 108 ms] (190) CdtProblem (191) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 105 ms] (192) CdtProblem (193) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 254 ms] (194) CdtProblem (195) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 68 ms] (196) CdtProblem (197) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 69 ms] (198) CdtProblem (199) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 366 ms] (200) CdtProblem (201) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 93 ms] (202) CdtProblem (203) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 77 ms] (204) CdtProblem (205) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 501 ms] (206) CdtProblem (207) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 129 ms] (208) CdtProblem (209) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 45 ms] (210) CdtProblem (211) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 516 ms] (212) CdtProblem (213) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 151 ms] (214) CdtProblem (215) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 14 ms] (216) CdtProblem (217) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 395 ms] (218) CdtProblem (219) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 127 ms] (220) CdtProblem (221) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 37 ms] (222) CdtProblem (223) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 168 ms] (224) CdtProblem (225) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 100 ms] (226) CdtProblem (227) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 86 ms] (228) CdtProblem (229) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 201 ms] (230) CdtProblem (231) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 92 ms] (232) CdtProblem ---------------------------------------- (0) Obligation: The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: a__from(X) -> cons(mark(X), from(s(X))) a__head(cons(X, XS)) -> mark(X) a__2nd(cons(X, XS)) -> a__head(mark(XS)) a__take(0, XS) -> nil a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) a__sel(0, cons(X, XS)) -> mark(X) a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) mark(from(X)) -> a__from(mark(X)) mark(head(X)) -> a__head(mark(X)) mark(2nd(X)) -> a__2nd(mark(X)) mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) mark(cons(X1, X2)) -> cons(mark(X1), X2) mark(s(X)) -> s(mark(X)) mark(0) -> 0 mark(nil) -> nil a__from(X) -> from(X) a__head(X) -> head(X) a__2nd(X) -> 2nd(X) a__take(X1, X2) -> take(X1, X2) a__sel(X1, X2) -> sel(X1, X2) S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (1) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (2) Obligation: The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: a__from(X) -> cons(mark(X), from(s(X))) a__head(cons(X, XS)) -> mark(X) a__2nd(cons(X, XS)) -> a__head(mark(XS)) a__take(0', XS) -> nil a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) a__sel(0', cons(X, XS)) -> mark(X) a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) mark(from(X)) -> a__from(mark(X)) mark(head(X)) -> a__head(mark(X)) mark(2nd(X)) -> a__2nd(mark(X)) mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) mark(cons(X1, X2)) -> cons(mark(X1), X2) mark(s(X)) -> s(mark(X)) mark(0') -> 0' mark(nil) -> nil a__from(X) -> from(X) a__head(X) -> head(X) a__2nd(X) -> 2nd(X) a__take(X1, X2) -> take(X1, X2) a__sel(X1, X2) -> sel(X1, X2) S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (3) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (4) Obligation: The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: a__from(X) -> cons(mark(X), from(s(X))) a__head(cons(X, XS)) -> mark(X) a__2nd(cons(X, XS)) -> a__head(mark(XS)) a__take(0, XS) -> nil a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) a__sel(0, cons(X, XS)) -> mark(X) a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) mark(from(X)) -> a__from(mark(X)) mark(head(X)) -> a__head(mark(X)) mark(2nd(X)) -> a__2nd(mark(X)) mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) mark(cons(X1, X2)) -> cons(mark(X1), X2) mark(s(X)) -> s(mark(X)) mark(0) -> 0 mark(nil) -> nil a__from(X) -> from(X) a__head(X) -> head(X) a__2nd(X) -> 2nd(X) a__take(X1, X2) -> take(X1, X2) a__sel(X1, X2) -> sel(X1, X2) S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (5) RelTrsToWeightedTrsProof (UPPER BOUND(ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (6) 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: a__from(X) -> cons(mark(X), from(s(X))) [1] a__head(cons(X, XS)) -> mark(X) [1] a__2nd(cons(X, XS)) -> a__head(mark(XS)) [1] a__take(0, XS) -> nil [1] a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) [1] a__sel(0, cons(X, XS)) -> mark(X) [1] a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(head(X)) -> a__head(mark(X)) [1] mark(2nd(X)) -> a__2nd(mark(X)) [1] mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) [1] mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(s(X)) -> s(mark(X)) [1] mark(0) -> 0 [1] mark(nil) -> nil [1] a__from(X) -> from(X) [1] a__head(X) -> head(X) [1] a__2nd(X) -> 2nd(X) [1] a__take(X1, X2) -> take(X1, X2) [1] a__sel(X1, X2) -> sel(X1, X2) [1] Rewrite Strategy: INNERMOST ---------------------------------------- (7) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (8) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: a__from(X) -> cons(mark(X), from(s(X))) [1] a__head(cons(X, XS)) -> mark(X) [1] a__2nd(cons(X, XS)) -> a__head(mark(XS)) [1] a__take(0, XS) -> nil [1] a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) [1] a__sel(0, cons(X, XS)) -> mark(X) [1] a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(head(X)) -> a__head(mark(X)) [1] mark(2nd(X)) -> a__2nd(mark(X)) [1] mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) [1] mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(s(X)) -> s(mark(X)) [1] mark(0) -> 0 [1] mark(nil) -> nil [1] a__from(X) -> from(X) [1] a__head(X) -> head(X) [1] a__2nd(X) -> 2nd(X) [1] a__take(X1, X2) -> take(X1, X2) [1] a__sel(X1, X2) -> sel(X1, X2) [1] The TRS has the following type information: a__from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel cons :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel mark :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel s :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 0 :: s:from:cons:0:nil:take:head:2nd:sel nil :: s:from:cons:0:nil:take:head:2nd:sel take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel Rewrite Strategy: INNERMOST ---------------------------------------- (9) 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: mark_1 a__take_2 a__sel_2 a__2nd_1 a__head_1 a__from_1 Due to the following rules being added: none And the following fresh constants: none ---------------------------------------- (10) 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: a__from(X) -> cons(mark(X), from(s(X))) [1] a__head(cons(X, XS)) -> mark(X) [1] a__2nd(cons(X, XS)) -> a__head(mark(XS)) [1] a__take(0, XS) -> nil [1] a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) [1] a__sel(0, cons(X, XS)) -> mark(X) [1] a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(head(X)) -> a__head(mark(X)) [1] mark(2nd(X)) -> a__2nd(mark(X)) [1] mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) [1] mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(s(X)) -> s(mark(X)) [1] mark(0) -> 0 [1] mark(nil) -> nil [1] a__from(X) -> from(X) [1] a__head(X) -> head(X) [1] a__2nd(X) -> 2nd(X) [1] a__take(X1, X2) -> take(X1, X2) [1] a__sel(X1, X2) -> sel(X1, X2) [1] The TRS has the following type information: a__from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel cons :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel mark :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel s :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 0 :: s:from:cons:0:nil:take:head:2nd:sel nil :: s:from:cons:0:nil:take:head:2nd:sel take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel Rewrite Strategy: INNERMOST ---------------------------------------- (11) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (12) 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: a__from(X) -> cons(mark(X), from(s(X))) [1] a__head(cons(X, XS)) -> mark(X) [1] a__2nd(cons(X, from(X'))) -> a__head(a__from(mark(X'))) [2] a__2nd(cons(X, head(X''))) -> a__head(a__head(mark(X''))) [2] a__2nd(cons(X, 2nd(X3))) -> a__head(a__2nd(mark(X3))) [2] a__2nd(cons(X, take(X1', X2'))) -> a__head(a__take(mark(X1'), mark(X2'))) [2] a__2nd(cons(X, sel(X1'', X2''))) -> a__head(a__sel(mark(X1''), mark(X2''))) [2] a__2nd(cons(X, cons(X11, X21))) -> a__head(cons(mark(X11), X21)) [2] a__2nd(cons(X, s(X4))) -> a__head(s(mark(X4))) [2] a__2nd(cons(X, 0)) -> a__head(0) [2] a__2nd(cons(X, nil)) -> a__head(nil) [2] a__take(0, XS) -> nil [1] a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) [1] a__sel(0, cons(X, XS)) -> mark(X) [1] a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) [1] mark(from(from(X59))) -> a__from(a__from(mark(X59))) [2] mark(from(head(X60))) -> a__from(a__head(mark(X60))) [2] mark(from(2nd(X61))) -> a__from(a__2nd(mark(X61))) [2] mark(from(take(X134, X234))) -> a__from(a__take(mark(X134), mark(X234))) [2] mark(from(sel(X135, X235))) -> a__from(a__sel(mark(X135), mark(X235))) [2] mark(from(cons(X136, X236))) -> a__from(cons(mark(X136), X236)) [2] mark(from(s(X62))) -> a__from(s(mark(X62))) [2] mark(from(0)) -> a__from(0) [2] mark(from(nil)) -> a__from(nil) [2] mark(head(from(X63))) -> a__head(a__from(mark(X63))) [2] mark(head(head(X64))) -> a__head(a__head(mark(X64))) [2] mark(head(2nd(X65))) -> a__head(a__2nd(mark(X65))) [2] mark(head(take(X137, X237))) -> a__head(a__take(mark(X137), mark(X237))) [2] mark(head(sel(X138, X238))) -> a__head(a__sel(mark(X138), mark(X238))) [2] mark(head(cons(X139, X239))) -> a__head(cons(mark(X139), X239)) [2] mark(head(s(X66))) -> a__head(s(mark(X66))) [2] mark(head(0)) -> a__head(0) [2] mark(head(nil)) -> a__head(nil) [2] mark(2nd(from(X67))) -> a__2nd(a__from(mark(X67))) [2] mark(2nd(head(X68))) -> a__2nd(a__head(mark(X68))) [2] mark(2nd(2nd(X69))) -> a__2nd(a__2nd(mark(X69))) [2] mark(2nd(take(X140, X240))) -> a__2nd(a__take(mark(X140), mark(X240))) [2] mark(2nd(sel(X141, X241))) -> a__2nd(a__sel(mark(X141), mark(X241))) [2] mark(2nd(cons(X142, X242))) -> a__2nd(cons(mark(X142), X242)) [2] mark(2nd(s(X70))) -> a__2nd(s(mark(X70))) [2] mark(2nd(0)) -> a__2nd(0) [2] mark(2nd(nil)) -> a__2nd(nil) [2] mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) [1] mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(s(X)) -> s(mark(X)) [1] mark(0) -> 0 [1] mark(nil) -> nil [1] a__from(X) -> from(X) [1] a__head(X) -> head(X) [1] a__2nd(X) -> 2nd(X) [1] a__take(X1, X2) -> take(X1, X2) [1] a__sel(X1, X2) -> sel(X1, X2) [1] The TRS has the following type information: a__from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel cons :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel mark :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel s :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 0 :: s:from:cons:0:nil:take:head:2nd:sel nil :: s:from:cons:0:nil:take:head:2nd:sel take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel Rewrite Strategy: INNERMOST ---------------------------------------- (13) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: 0 => 0 nil => 1 ---------------------------------------- (14) Obligation: Complexity RNTS consisting of the following rules: a__2nd(z) -{ 2 }-> a__head(a__take(mark(X1'), mark(X2'))) :|: X2' >= 0, X1' >= 0, X >= 0, z = 1 + X + (1 + X1' + X2') a__2nd(z) -{ 2 }-> a__head(a__sel(mark(X1''), mark(X2''))) :|: X1'' >= 0, X >= 0, X2'' >= 0, z = 1 + X + (1 + X1'' + X2'') a__2nd(z) -{ 2 }-> a__head(a__head(mark(X''))) :|: z = 1 + X + (1 + X''), X >= 0, X'' >= 0 a__2nd(z) -{ 2 }-> a__head(a__from(mark(X'))) :|: z = 1 + X + (1 + X'), X >= 0, X' >= 0 a__2nd(z) -{ 2 }-> a__head(a__2nd(mark(X3))) :|: z = 1 + X + (1 + X3), X >= 0, X3 >= 0 a__2nd(z) -{ 2 }-> a__head(1) :|: z = 1 + X + 1, X >= 0 a__2nd(z) -{ 2 }-> a__head(0) :|: z = 1 + X + 0, X >= 0 a__2nd(z) -{ 2 }-> a__head(1 + mark(X4)) :|: X >= 0, z = 1 + X + (1 + X4), X4 >= 0 a__2nd(z) -{ 2 }-> a__head(1 + mark(X11) + X21) :|: X11 >= 0, X21 >= 0, X >= 0, z = 1 + X + (1 + X11 + X21) a__2nd(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__from(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__from(z) -{ 1 }-> 1 + mark(X) + (1 + (1 + X)) :|: X >= 0, z = X a__head(z) -{ 1 }-> mark(X) :|: z = 1 + X + XS, X >= 0, XS >= 0 a__head(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__sel(z, z') -{ 1 }-> mark(X) :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 a__sel(z, z') -{ 1 }-> a__sel(mark(N), mark(XS)) :|: z = 1 + N, z' = 1 + X + XS, X >= 0, XS >= 0, N >= 0 a__sel(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__take(z, z') -{ 1 }-> 1 :|: z' = XS, z = 0, XS >= 0 a__take(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__take(z, z') -{ 1 }-> 1 + mark(X) + (1 + N + XS) :|: z = 1 + N, z' = 1 + X + XS, X >= 0, XS >= 0, N >= 0 mark(z) -{ 1 }-> a__take(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__sel(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 2 }-> a__head(a__take(mark(X137), mark(X237))) :|: z = 1 + (1 + X137 + X237), X137 >= 0, X237 >= 0 mark(z) -{ 2 }-> a__head(a__sel(mark(X138), mark(X238))) :|: z = 1 + (1 + X138 + X238), X138 >= 0, X238 >= 0 mark(z) -{ 2 }-> a__head(a__head(mark(X64))) :|: z = 1 + (1 + X64), X64 >= 0 mark(z) -{ 2 }-> a__head(a__from(mark(X63))) :|: z = 1 + (1 + X63), X63 >= 0 mark(z) -{ 2 }-> a__head(a__2nd(mark(X65))) :|: z = 1 + (1 + X65), X65 >= 0 mark(z) -{ 2 }-> a__head(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__head(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__head(1 + mark(X66)) :|: z = 1 + (1 + X66), X66 >= 0 mark(z) -{ 2 }-> a__head(1 + mark(X139) + X239) :|: z = 1 + (1 + X139 + X239), X239 >= 0, X139 >= 0 mark(z) -{ 2 }-> a__from(a__take(mark(X134), mark(X234))) :|: z = 1 + (1 + X134 + X234), X134 >= 0, X234 >= 0 mark(z) -{ 2 }-> a__from(a__sel(mark(X135), mark(X235))) :|: X135 >= 0, X235 >= 0, z = 1 + (1 + X135 + X235) mark(z) -{ 2 }-> a__from(a__head(mark(X60))) :|: X60 >= 0, z = 1 + (1 + X60) mark(z) -{ 2 }-> a__from(a__from(mark(X59))) :|: z = 1 + (1 + X59), X59 >= 0 mark(z) -{ 2 }-> a__from(a__2nd(mark(X61))) :|: X61 >= 0, z = 1 + (1 + X61) mark(z) -{ 2 }-> a__from(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__from(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__from(1 + mark(X62)) :|: X62 >= 0, z = 1 + (1 + X62) mark(z) -{ 2 }-> a__from(1 + mark(X136) + X236) :|: X136 >= 0, X236 >= 0, z = 1 + (1 + X136 + X236) mark(z) -{ 2 }-> a__2nd(a__take(mark(X140), mark(X240))) :|: z = 1 + (1 + X140 + X240), X240 >= 0, X140 >= 0 mark(z) -{ 2 }-> a__2nd(a__sel(mark(X141), mark(X241))) :|: z = 1 + (1 + X141 + X241), X241 >= 0, X141 >= 0 mark(z) -{ 2 }-> a__2nd(a__head(mark(X68))) :|: z = 1 + (1 + X68), X68 >= 0 mark(z) -{ 2 }-> a__2nd(a__from(mark(X67))) :|: X67 >= 0, z = 1 + (1 + X67) mark(z) -{ 2 }-> a__2nd(a__2nd(mark(X69))) :|: z = 1 + (1 + X69), X69 >= 0 mark(z) -{ 2 }-> a__2nd(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__2nd(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__2nd(1 + mark(X70)) :|: X70 >= 0, z = 1 + (1 + X70) mark(z) -{ 2 }-> a__2nd(1 + mark(X142) + X242) :|: z = 1 + (1 + X142 + X242), X242 >= 0, X142 >= 0 mark(z) -{ 1 }-> 1 :|: z = 1 mark(z) -{ 1 }-> 0 :|: z = 0 mark(z) -{ 1 }-> 1 + mark(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> 1 + mark(X1) + X2 :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 ---------------------------------------- (15) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (16) Obligation: Complexity RNTS consisting of the following rules: a__2nd(z) -{ 2 }-> a__head(a__take(mark(X1'), mark(X2'))) :|: X2' >= 0, X1' >= 0, X >= 0, z = 1 + X + (1 + X1' + X2') a__2nd(z) -{ 2 }-> a__head(a__sel(mark(X1''), mark(X2''))) :|: X1'' >= 0, X >= 0, X2'' >= 0, z = 1 + X + (1 + X1'' + X2'') a__2nd(z) -{ 2 }-> a__head(a__head(mark(X''))) :|: z = 1 + X + (1 + X''), X >= 0, X'' >= 0 a__2nd(z) -{ 2 }-> a__head(a__from(mark(X'))) :|: z = 1 + X + (1 + X'), X >= 0, X' >= 0 a__2nd(z) -{ 2 }-> a__head(a__2nd(mark(X3))) :|: z = 1 + X + (1 + X3), X >= 0, X3 >= 0 a__2nd(z) -{ 2 }-> a__head(1) :|: z - 2 >= 0 a__2nd(z) -{ 2 }-> a__head(0) :|: z - 1 >= 0 a__2nd(z) -{ 2 }-> a__head(1 + mark(X4)) :|: X >= 0, z = 1 + X + (1 + X4), X4 >= 0 a__2nd(z) -{ 2 }-> a__head(1 + mark(X11) + X21) :|: X11 >= 0, X21 >= 0, X >= 0, z = 1 + X + (1 + X11 + X21) a__2nd(z) -{ 1 }-> 1 + z :|: z >= 0 a__from(z) -{ 1 }-> 1 + z :|: z >= 0 a__from(z) -{ 1 }-> 1 + mark(z) + (1 + (1 + z)) :|: z >= 0 a__head(z) -{ 1 }-> mark(X) :|: z = 1 + X + XS, X >= 0, XS >= 0 a__head(z) -{ 1 }-> 1 + z :|: z >= 0 a__sel(z, z') -{ 1 }-> mark(X) :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 a__sel(z, z') -{ 1 }-> a__sel(mark(z - 1), mark(XS)) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 a__sel(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 a__take(z, z') -{ 1 }-> 1 :|: z = 0, z' >= 0 a__take(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 a__take(z, z') -{ 1 }-> 1 + mark(X) + (1 + (z - 1) + XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 mark(z) -{ 1 }-> a__take(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__sel(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 2 }-> a__head(a__take(mark(X137), mark(X237))) :|: z = 1 + (1 + X137 + X237), X137 >= 0, X237 >= 0 mark(z) -{ 2 }-> a__head(a__sel(mark(X138), mark(X238))) :|: z = 1 + (1 + X138 + X238), X138 >= 0, X238 >= 0 mark(z) -{ 2 }-> a__head(a__head(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__head(a__from(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__head(a__2nd(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__head(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__head(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__head(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__head(1 + mark(X139) + X239) :|: z = 1 + (1 + X139 + X239), X239 >= 0, X139 >= 0 mark(z) -{ 2 }-> a__from(a__take(mark(X134), mark(X234))) :|: z = 1 + (1 + X134 + X234), X134 >= 0, X234 >= 0 mark(z) -{ 2 }-> a__from(a__sel(mark(X135), mark(X235))) :|: X135 >= 0, X235 >= 0, z = 1 + (1 + X135 + X235) mark(z) -{ 2 }-> a__from(a__head(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__from(a__from(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__from(a__2nd(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__from(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__from(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__from(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__from(1 + mark(X136) + X236) :|: X136 >= 0, X236 >= 0, z = 1 + (1 + X136 + X236) mark(z) -{ 2 }-> a__2nd(a__take(mark(X140), mark(X240))) :|: z = 1 + (1 + X140 + X240), X240 >= 0, X140 >= 0 mark(z) -{ 2 }-> a__2nd(a__sel(mark(X141), mark(X241))) :|: z = 1 + (1 + X141 + X241), X241 >= 0, X141 >= 0 mark(z) -{ 2 }-> a__2nd(a__head(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__2nd(a__from(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__2nd(a__2nd(mark(z - 2))) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__2nd(1) :|: z = 1 + 1 mark(z) -{ 2 }-> a__2nd(0) :|: z = 1 + 0 mark(z) -{ 2 }-> a__2nd(1 + mark(z - 2)) :|: z - 2 >= 0 mark(z) -{ 2 }-> a__2nd(1 + mark(X142) + X242) :|: z = 1 + (1 + X142 + X242), X242 >= 0, X142 >= 0 mark(z) -{ 1 }-> 1 :|: z = 1 mark(z) -{ 1 }-> 0 :|: z = 0 mark(z) -{ 1 }-> 1 + mark(z - 1) :|: z - 1 >= 0 mark(z) -{ 1 }-> 1 + mark(X1) + X2 :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 ---------------------------------------- (17) 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: none And the following fresh constants: none ---------------------------------------- (18) 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: a__from(X) -> cons(mark(X), from(s(X))) [1] a__head(cons(X, XS)) -> mark(X) [1] a__2nd(cons(X, XS)) -> a__head(mark(XS)) [1] a__take(0, XS) -> nil [1] a__take(s(N), cons(X, XS)) -> cons(mark(X), take(N, XS)) [1] a__sel(0, cons(X, XS)) -> mark(X) [1] a__sel(s(N), cons(X, XS)) -> a__sel(mark(N), mark(XS)) [1] mark(from(X)) -> a__from(mark(X)) [1] mark(head(X)) -> a__head(mark(X)) [1] mark(2nd(X)) -> a__2nd(mark(X)) [1] mark(take(X1, X2)) -> a__take(mark(X1), mark(X2)) [1] mark(sel(X1, X2)) -> a__sel(mark(X1), mark(X2)) [1] mark(cons(X1, X2)) -> cons(mark(X1), X2) [1] mark(s(X)) -> s(mark(X)) [1] mark(0) -> 0 [1] mark(nil) -> nil [1] a__from(X) -> from(X) [1] a__head(X) -> head(X) [1] a__2nd(X) -> 2nd(X) [1] a__take(X1, X2) -> take(X1, X2) [1] a__sel(X1, X2) -> sel(X1, X2) [1] The TRS has the following type information: a__from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel cons :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel mark :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel from :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel s :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 0 :: s:from:cons:0:nil:take:head:2nd:sel nil :: s:from:cons:0:nil:take:head:2nd:sel take :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel a__sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel head :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel 2nd :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel sel :: s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel -> s:from:cons:0:nil:take:head:2nd:sel Rewrite Strategy: INNERMOST ---------------------------------------- (19) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: 0 => 0 nil => 1 ---------------------------------------- (20) Obligation: Complexity RNTS consisting of the following rules: a__2nd(z) -{ 1 }-> a__head(mark(XS)) :|: z = 1 + X + XS, X >= 0, XS >= 0 a__2nd(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__from(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__from(z) -{ 1 }-> 1 + mark(X) + (1 + (1 + X)) :|: X >= 0, z = X a__head(z) -{ 1 }-> mark(X) :|: z = 1 + X + XS, X >= 0, XS >= 0 a__head(z) -{ 1 }-> 1 + X :|: X >= 0, z = X a__sel(z, z') -{ 1 }-> mark(X) :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 a__sel(z, z') -{ 1 }-> a__sel(mark(N), mark(XS)) :|: z = 1 + N, z' = 1 + X + XS, X >= 0, XS >= 0, N >= 0 a__sel(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__take(z, z') -{ 1 }-> 1 :|: z' = XS, z = 0, XS >= 0 a__take(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 a__take(z, z') -{ 1 }-> 1 + mark(X) + (1 + N + XS) :|: z = 1 + N, z' = 1 + X + XS, X >= 0, XS >= 0, N >= 0 mark(z) -{ 1 }-> a__take(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__sel(mark(X1), mark(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> a__head(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__from(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> a__2nd(mark(X)) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> 1 :|: z = 1 mark(z) -{ 1 }-> 0 :|: z = 0 mark(z) -{ 1 }-> 1 + mark(X) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> 1 + mark(X1) + X2 :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (21) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (22) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__HEAD(z0) -> c3 A__2ND(cons(z0, z1)) -> c4(A__HEAD(mark(z1)), MARK(z1)) A__2ND(z0) -> c5 A__TAKE(0, z0) -> c6 A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__TAKE(z0, z1) -> c8 A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c12 MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) MARK(0) -> c22 MARK(nil) -> c23 S tuples: A__FROM(z0) -> c(MARK(z0)) A__FROM(z0) -> c1 A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__HEAD(z0) -> c3 A__2ND(cons(z0, z1)) -> c4(A__HEAD(mark(z1)), MARK(z1)) A__2ND(z0) -> c5 A__TAKE(0, z0) -> c6 A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__TAKE(z0, z1) -> c8 A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) A__SEL(z0, z1) -> c12 MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) MARK(0) -> c22 MARK(nil) -> c23 K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__2ND_1, A__TAKE_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c1, c2_1, c3, c4_2, c5, c6, c7_1, c8, c9_1, c10_2, c11_2, c12, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c22, c23 ---------------------------------------- (23) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing nodes: A__FROM(z0) -> c1 A__SEL(z0, z1) -> c12 A__TAKE(z0, z1) -> c8 A__TAKE(0, z0) -> c6 A__2ND(z0) -> c5 A__HEAD(z0) -> c3 MARK(nil) -> c23 MARK(0) -> c22 ---------------------------------------- (24) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__2ND(cons(z0, z1)) -> c4(A__HEAD(mark(z1)), MARK(z1)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__2ND(cons(z0, z1)) -> c4(A__HEAD(mark(z1)), MARK(z1)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__2ND_1, A__TAKE_2, A__SEL_2, MARK_1 Compound Symbols: c_1, c2_1, c4_2, c7_1, c9_1, c10_2, c11_2, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1 ---------------------------------------- (25) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__2ND(cons(z0, z1)) -> c4(A__HEAD(mark(z1)), MARK(z1)) by A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(A__HEAD(s(mark(z0))), MARK(s(z0))) A__2ND(cons(x0, 0)) -> c4(A__HEAD(0), MARK(0)) A__2ND(cons(x0, nil)) -> c4(A__HEAD(nil), MARK(nil)) ---------------------------------------- (26) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(A__HEAD(s(mark(z0))), MARK(s(z0))) A__2ND(cons(x0, 0)) -> c4(A__HEAD(0), MARK(0)) A__2ND(cons(x0, nil)) -> c4(A__HEAD(nil), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(A__HEAD(s(mark(z0))), MARK(s(z0))) A__2ND(cons(x0, 0)) -> c4(A__HEAD(0), MARK(0)) A__2ND(cons(x0, nil)) -> c4(A__HEAD(nil), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c10_2, c11_2, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2 ---------------------------------------- (27) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__2ND(cons(x0, nil)) -> c4(A__HEAD(nil), MARK(nil)) A__2ND(cons(x0, 0)) -> c4(A__HEAD(0), MARK(0)) ---------------------------------------- (28) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(A__HEAD(s(mark(z0))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(A__HEAD(s(mark(z0))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c10_2, c11_2, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2 ---------------------------------------- (29) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (30) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c10_2, c11_2, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1 ---------------------------------------- (31) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(z0), cons(z1, z2)) -> c10(A__SEL(mark(z0), mark(z2)), MARK(z0)) by A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c10(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2)), MARK(0)) A__SEL(s(nil), cons(x1, x2)) -> c10(A__SEL(nil, mark(x2)), MARK(nil)) ---------------------------------------- (32) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c10(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2)), MARK(0)) A__SEL(s(nil), cons(x1, x2)) -> c10(A__SEL(nil, mark(x2)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c10(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2)), MARK(0)) A__SEL(s(nil), cons(x1, x2)) -> c10(A__SEL(nil, mark(x2)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c11_2, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2 ---------------------------------------- (33) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, x2)) -> c10(A__SEL(nil, mark(x2)), MARK(nil)) ---------------------------------------- (34) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c10(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2)), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(x0), cons(x1, s(z0))) -> c10(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(A__SEL(mark(x0), 0), MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(A__SEL(mark(x0), nil), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2)), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c11_2, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2 ---------------------------------------- (35) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (36) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c11_2, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1 ---------------------------------------- (37) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(z0), cons(z1, z2)) -> c11(A__SEL(mark(z0), mark(z2)), MARK(z2)) by A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 0)) -> c11(A__SEL(mark(x0), 0), MARK(0)) A__SEL(s(x0), cons(x1, nil)) -> c11(A__SEL(mark(x0), nil), MARK(nil)) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(A__SEL(nil, mark(x2)), MARK(x2)) ---------------------------------------- (38) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 0)) -> c11(A__SEL(mark(x0), 0), MARK(0)) A__SEL(s(x0), cons(x1, nil)) -> c11(A__SEL(mark(x0), nil), MARK(nil)) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(A__SEL(nil, mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 0)) -> c11(A__SEL(mark(x0), 0), MARK(0)) A__SEL(s(x0), cons(x1, nil)) -> c11(A__SEL(mark(x0), nil), MARK(nil)) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(A__SEL(nil, mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2 ---------------------------------------- (39) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(x0), cons(x1, 0)) -> c11(A__SEL(mark(x0), 0), MARK(0)) A__SEL(s(x0), cons(x1, nil)) -> c11(A__SEL(mark(x0), nil), MARK(nil)) ---------------------------------------- (40) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(A__SEL(nil, mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(A__SEL(cons(mark(z0), z1), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(A__SEL(nil, mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2 ---------------------------------------- (41) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (42) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c14_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1 ---------------------------------------- (43) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(head(z0)) -> c14(A__HEAD(mark(z0)), MARK(z0)) by MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(A__HEAD(s(mark(z0))), MARK(s(z0))) MARK(head(0)) -> c14(A__HEAD(0), MARK(0)) MARK(head(nil)) -> c14(A__HEAD(nil), MARK(nil)) ---------------------------------------- (44) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(A__HEAD(s(mark(z0))), MARK(s(z0))) MARK(head(0)) -> c14(A__HEAD(0), MARK(0)) MARK(head(nil)) -> c14(A__HEAD(nil), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(A__HEAD(s(mark(z0))), MARK(s(z0))) MARK(head(0)) -> c14(A__HEAD(0), MARK(0)) MARK(head(nil)) -> c14(A__HEAD(nil), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2 ---------------------------------------- (45) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(head(nil)) -> c14(A__HEAD(nil), MARK(nil)) MARK(head(0)) -> c14(A__HEAD(0), MARK(0)) ---------------------------------------- (46) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(A__HEAD(s(mark(z0))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(A__HEAD(s(mark(z0))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2 ---------------------------------------- (47) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (48) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c15_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1 ---------------------------------------- (49) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(2nd(z0)) -> c15(A__2ND(mark(z0)), MARK(z0)) by MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(A__2ND(s(mark(z0))), MARK(s(z0))) MARK(2nd(0)) -> c15(A__2ND(0), MARK(0)) MARK(2nd(nil)) -> c15(A__2ND(nil), MARK(nil)) ---------------------------------------- (50) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(A__2ND(s(mark(z0))), MARK(s(z0))) MARK(2nd(0)) -> c15(A__2ND(0), MARK(0)) MARK(2nd(nil)) -> c15(A__2ND(nil), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(A__2ND(s(mark(z0))), MARK(s(z0))) MARK(2nd(0)) -> c15(A__2ND(0), MARK(0)) MARK(2nd(nil)) -> c15(A__2ND(nil), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2 ---------------------------------------- (51) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(2nd(0)) -> c15(A__2ND(0), MARK(0)) MARK(2nd(nil)) -> c15(A__2ND(nil), MARK(nil)) ---------------------------------------- (52) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(A__2ND(s(mark(z0))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(A__2ND(s(mark(z0))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2 ---------------------------------------- (53) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (54) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c16_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1 ---------------------------------------- (55) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(take(z0, z1)) -> c16(A__TAKE(mark(z0), mark(z1)), MARK(z0)) by MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(x0, s(z0))) -> c16(A__TAKE(mark(x0), s(mark(z0))), MARK(x0)) MARK(take(x0, 0)) -> c16(A__TAKE(mark(x0), 0), MARK(x0)) MARK(take(x0, nil)) -> c16(A__TAKE(mark(x0), nil), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(cons(z0, z1), x1)) -> c16(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(0, x1)) -> c16(A__TAKE(0, mark(x1)), MARK(0)) MARK(take(nil, x1)) -> c16(A__TAKE(nil, mark(x1)), MARK(nil)) ---------------------------------------- (56) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(x0, s(z0))) -> c16(A__TAKE(mark(x0), s(mark(z0))), MARK(x0)) MARK(take(x0, 0)) -> c16(A__TAKE(mark(x0), 0), MARK(x0)) MARK(take(x0, nil)) -> c16(A__TAKE(mark(x0), nil), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(cons(z0, z1), x1)) -> c16(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(0, x1)) -> c16(A__TAKE(0, mark(x1)), MARK(0)) MARK(take(nil, x1)) -> c16(A__TAKE(nil, mark(x1)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(x0, s(z0))) -> c16(A__TAKE(mark(x0), s(mark(z0))), MARK(x0)) MARK(take(x0, 0)) -> c16(A__TAKE(mark(x0), 0), MARK(x0)) MARK(take(x0, nil)) -> c16(A__TAKE(mark(x0), nil), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(cons(z0, z1), x1)) -> c16(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(0, x1)) -> c16(A__TAKE(0, mark(x1)), MARK(0)) MARK(take(nil, x1)) -> c16(A__TAKE(nil, mark(x1)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2 ---------------------------------------- (57) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(take(nil, x1)) -> c16(A__TAKE(nil, mark(x1)), MARK(nil)) MARK(take(0, x1)) -> c16(A__TAKE(0, mark(x1)), MARK(0)) ---------------------------------------- (58) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(x0, s(z0))) -> c16(A__TAKE(mark(x0), s(mark(z0))), MARK(x0)) MARK(take(x0, 0)) -> c16(A__TAKE(mark(x0), 0), MARK(x0)) MARK(take(x0, nil)) -> c16(A__TAKE(mark(x0), nil), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(cons(z0, z1), x1)) -> c16(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(x0, s(z0))) -> c16(A__TAKE(mark(x0), s(mark(z0))), MARK(x0)) MARK(take(x0, 0)) -> c16(A__TAKE(mark(x0), 0), MARK(x0)) MARK(take(x0, nil)) -> c16(A__TAKE(mark(x0), nil), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(cons(z0, z1), x1)) -> c16(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2 ---------------------------------------- (59) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (60) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c17_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1 ---------------------------------------- (61) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(take(z0, z1)) -> c17(A__TAKE(mark(z0), mark(z1)), MARK(z1)) by MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(x0, s(z0))) -> c17(A__TAKE(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(take(x0, 0)) -> c17(A__TAKE(mark(x0), 0), MARK(0)) MARK(take(x0, nil)) -> c17(A__TAKE(mark(x0), nil), MARK(nil)) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c17(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(0, x1)) -> c17(A__TAKE(0, mark(x1)), MARK(x1)) MARK(take(nil, x1)) -> c17(A__TAKE(nil, mark(x1)), MARK(x1)) ---------------------------------------- (62) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(x0, s(z0))) -> c17(A__TAKE(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(take(x0, 0)) -> c17(A__TAKE(mark(x0), 0), MARK(0)) MARK(take(x0, nil)) -> c17(A__TAKE(mark(x0), nil), MARK(nil)) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c17(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(0, x1)) -> c17(A__TAKE(0, mark(x1)), MARK(x1)) MARK(take(nil, x1)) -> c17(A__TAKE(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(x0, s(z0))) -> c17(A__TAKE(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(take(x0, 0)) -> c17(A__TAKE(mark(x0), 0), MARK(0)) MARK(take(x0, nil)) -> c17(A__TAKE(mark(x0), nil), MARK(nil)) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c17(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(0, x1)) -> c17(A__TAKE(0, mark(x1)), MARK(x1)) MARK(take(nil, x1)) -> c17(A__TAKE(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2 ---------------------------------------- (63) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(take(x0, 0)) -> c17(A__TAKE(mark(x0), 0), MARK(0)) MARK(take(x0, nil)) -> c17(A__TAKE(mark(x0), nil), MARK(nil)) ---------------------------------------- (64) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(x0, s(z0))) -> c17(A__TAKE(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c17(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(0, x1)) -> c17(A__TAKE(0, mark(x1)), MARK(x1)) MARK(take(nil, x1)) -> c17(A__TAKE(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(x0, s(z0))) -> c17(A__TAKE(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(cons(z0, z1), x1)) -> c17(A__TAKE(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(0, x1)) -> c17(A__TAKE(0, mark(x1)), MARK(x1)) MARK(take(nil, x1)) -> c17(A__TAKE(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2 ---------------------------------------- (65) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (66) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c18_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1 ---------------------------------------- (67) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(sel(z0, z1)) -> c18(A__SEL(mark(z0), mark(z1)), MARK(z0)) by MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c18(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c18(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c18(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c18(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1)), MARK(0)) MARK(sel(nil, x1)) -> c18(A__SEL(nil, mark(x1)), MARK(nil)) ---------------------------------------- (68) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c18(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c18(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c18(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c18(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1)), MARK(0)) MARK(sel(nil, x1)) -> c18(A__SEL(nil, mark(x1)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c18(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c18(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c18(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c18(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1)), MARK(0)) MARK(sel(nil, x1)) -> c18(A__SEL(nil, mark(x1)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2 ---------------------------------------- (69) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: MARK(sel(nil, x1)) -> c18(A__SEL(nil, mark(x1)), MARK(nil)) ---------------------------------------- (70) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c18(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c18(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c18(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c18(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1)), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(x0, s(z0))) -> c18(A__SEL(mark(x0), s(mark(z0))), MARK(x0)) MARK(sel(x0, 0)) -> c18(A__SEL(mark(x0), 0), MARK(x0)) MARK(sel(x0, nil)) -> c18(A__SEL(mark(x0), nil), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(cons(z0, z1), x1)) -> c18(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(cons(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1)), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2 ---------------------------------------- (71) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (72) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c19_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1 ---------------------------------------- (73) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(sel(z0, z1)) -> c19(A__SEL(mark(z0), mark(z1)), MARK(z1)) by MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c19(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(x0, 0)) -> c19(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c19(A__SEL(mark(x0), nil), MARK(nil)) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c19(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c19(A__SEL(nil, mark(x1)), MARK(x1)) ---------------------------------------- (74) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c19(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(x0, 0)) -> c19(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c19(A__SEL(mark(x0), nil), MARK(nil)) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c19(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c19(A__SEL(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c19(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(x0, 0)) -> c19(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c19(A__SEL(mark(x0), nil), MARK(nil)) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c19(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c19(A__SEL(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2 ---------------------------------------- (75) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: MARK(sel(x0, 0)) -> c19(A__SEL(mark(x0), 0), MARK(0)) MARK(sel(x0, nil)) -> c19(A__SEL(mark(x0), nil), MARK(nil)) ---------------------------------------- (76) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c19(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c19(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c19(A__SEL(nil, mark(x1)), MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(x0, s(z0))) -> c19(A__SEL(mark(x0), s(mark(z0))), MARK(s(z0))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(cons(z0, z1), x1)) -> c19(A__SEL(cons(mark(z0), z1), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(nil, x1)) -> c19(A__SEL(nil, mark(x1)), MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2 ---------------------------------------- (77) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (78) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (79) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__2ND(cons(x0, from(z0))) -> c4(A__HEAD(a__from(mark(z0))), MARK(from(z0))) by A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(from(mark(x1))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) ---------------------------------------- (80) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(from(mark(x1))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(from(mark(x1))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (81) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (82) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (83) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__2ND(cons(x0, head(z0))) -> c4(A__HEAD(a__head(mark(z0))), MARK(head(z0))) by A__2ND(cons(x0, head(x1))) -> c4(A__HEAD(head(mark(x1))), MARK(head(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0)), MARK(head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil)), MARK(head(nil))) ---------------------------------------- (84) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(x1))) -> c4(A__HEAD(head(mark(x1))), MARK(head(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0)), MARK(head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil)), MARK(head(nil))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(x1))) -> c4(A__HEAD(head(mark(x1))), MARK(head(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0)), MARK(head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil)), MARK(head(nil))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (85) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (86) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (87) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__2ND(cons(x0, 2nd(z0))) -> c4(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) by A__2ND(cons(x0, 2nd(x1))) -> c4(A__HEAD(2nd(mark(x1))), MARK(2nd(x1))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0)), MARK(2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil)), MARK(2nd(nil))) ---------------------------------------- (88) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(x1))) -> c4(A__HEAD(2nd(mark(x1))), MARK(2nd(x1))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0)), MARK(2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil)), MARK(2nd(nil))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(x1))) -> c4(A__HEAD(2nd(mark(x1))), MARK(2nd(x1))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0)), MARK(2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil)), MARK(2nd(nil))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (89) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (90) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (91) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__2ND(cons(x0, take(z0, z1))) -> c4(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) by A__2ND(cons(x0, take(x1, x2))) -> c4(A__HEAD(take(mark(x1), mark(x2))), MARK(take(x1, x2))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) ---------------------------------------- (92) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, x2))) -> c4(A__HEAD(take(mark(x1), mark(x2))), MARK(take(x1, x2))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, x2))) -> c4(A__HEAD(take(mark(x1), mark(x2))), MARK(take(x1, x2))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (93) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (95) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__2ND(cons(x0, sel(z0, z1))) -> c4(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) by A__2ND(cons(x0, sel(x1, x2))) -> c4(A__HEAD(sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(A__HEAD(sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(A__HEAD(sel(mark(x1), mark(x2))), MARK(sel(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (97) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (98) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (99) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, from(z0))) -> c10(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) by A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, from(x2))) -> c10(A__SEL(nil, a__from(mark(x2))), MARK(nil)) ---------------------------------------- (100) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, from(x2))) -> c10(A__SEL(nil, a__from(mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, from(x2))) -> c10(A__SEL(nil, a__from(mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (101) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, from(x2))) -> c10(A__SEL(nil, a__from(mark(x2))), MARK(nil)) ---------------------------------------- (102) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), from(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (103) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (104) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (105) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, head(z0))) -> c10(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) by A__SEL(s(x0), cons(x1, head(x2))) -> c10(A__SEL(mark(x0), head(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, head(x2))) -> c10(A__SEL(nil, a__head(mark(x2))), MARK(nil)) ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(A__SEL(mark(x0), head(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, head(x2))) -> c10(A__SEL(nil, a__head(mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(A__SEL(mark(x0), head(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, head(x2))) -> c10(A__SEL(nil, a__head(mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (107) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, head(x2))) -> c10(A__SEL(nil, a__head(mark(x2))), MARK(nil)) ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(A__SEL(mark(x0), head(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(A__SEL(mark(x0), head(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (109) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (110) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (111) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, 2nd(z0))) -> c10(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) by A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(A__SEL(mark(x0), 2nd(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c10(A__SEL(nil, a__2nd(mark(x2))), MARK(nil)) ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(A__SEL(mark(x0), 2nd(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c10(A__SEL(nil, a__2nd(mark(x2))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(A__SEL(mark(x0), 2nd(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2))), MARK(0)) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c10(A__SEL(nil, a__2nd(mark(x2))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (113) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, 2nd(x2))) -> c10(A__SEL(nil, a__2nd(mark(x2))), MARK(nil)) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(A__SEL(mark(x0), 2nd(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(A__SEL(mark(x0), 2nd(mark(x2))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (115) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (117) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, take(z0, z1))) -> c10(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) by A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c10(A__SEL(nil, a__take(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c10(A__SEL(nil, a__take(mark(x2), mark(x3))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c10(A__SEL(nil, a__take(mark(x2), mark(x3))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (119) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, take(x2, x3))) -> c10(A__SEL(nil, a__take(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (121) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (122) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (123) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c10(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) by A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c10(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c10(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c10(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (125) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c10(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(nil)) ---------------------------------------- (126) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (127) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (128) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (129) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c10(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) by A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3)), MARK(0)) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c10(A__SEL(nil, cons(mark(x2), x3)), MARK(nil)) ---------------------------------------- (130) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3)), MARK(0)) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c10(A__SEL(nil, cons(mark(x2), x3)), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3)), MARK(0)) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c10(A__SEL(nil, cons(mark(x2), x3)), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (131) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c10(A__SEL(nil, cons(mark(x2), x3)), MARK(nil)) ---------------------------------------- (132) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3)), MARK(0)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3)), MARK(0)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (133) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (134) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (135) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(from(z0)), cons(x1, x2)) -> c10(A__SEL(a__from(mark(z0)), mark(x2)), MARK(from(z0))) by A__SEL(s(from(x0)), cons(x1, from(z0))) -> c10(A__SEL(a__from(mark(x0)), a__from(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, head(z0))) -> c10(A__SEL(a__from(mark(x0)), a__head(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 2nd(z0))) -> c10(A__SEL(a__from(mark(x0)), a__2nd(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, take(z0, z1))) -> c10(A__SEL(a__from(mark(x0)), a__take(mark(z0), mark(z1))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, sel(z0, z1))) -> c10(A__SEL(a__from(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, cons(z0, z1))) -> c10(A__SEL(a__from(mark(x0)), cons(mark(z0), z1)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(A__SEL(a__from(mark(x0)), 0), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(A__SEL(a__from(mark(x0)), nil), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(A__SEL(from(mark(x0)), mark(x2)), MARK(from(x0))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) ---------------------------------------- (136) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(A__SEL(a__from(mark(x0)), 0), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(A__SEL(a__from(mark(x0)), nil), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(A__SEL(from(mark(x0)), mark(x2)), MARK(from(x0))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(A__SEL(a__from(mark(x0)), 0), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(A__SEL(a__from(mark(x0)), nil), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(A__SEL(from(mark(x0)), mark(x2)), MARK(from(x0))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (137) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (138) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (139) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(head(z0)), cons(x1, x2)) -> c10(A__SEL(a__head(mark(z0)), mark(x2)), MARK(head(z0))) by A__SEL(s(head(x0)), cons(x1, from(z0))) -> c10(A__SEL(a__head(mark(x0)), a__from(mark(z0))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, head(z0))) -> c10(A__SEL(a__head(mark(x0)), a__head(mark(z0))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 2nd(z0))) -> c10(A__SEL(a__head(mark(x0)), a__2nd(mark(z0))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, take(z0, z1))) -> c10(A__SEL(a__head(mark(x0)), a__take(mark(z0), mark(z1))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, sel(z0, z1))) -> c10(A__SEL(a__head(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, cons(z0, z1))) -> c10(A__SEL(a__head(mark(x0)), cons(mark(z0), z1)), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(A__SEL(a__head(mark(x0)), 0), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(A__SEL(a__head(mark(x0)), nil), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(A__SEL(head(mark(x0)), mark(x2)), MARK(head(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2)), MARK(head(0))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2)), MARK(head(nil))) ---------------------------------------- (140) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(A__SEL(a__head(mark(x0)), 0), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(A__SEL(a__head(mark(x0)), nil), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(A__SEL(head(mark(x0)), mark(x2)), MARK(head(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2)), MARK(head(0))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2)), MARK(head(nil))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(A__SEL(a__head(mark(x0)), 0), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(A__SEL(a__head(mark(x0)), nil), MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(A__SEL(head(mark(x0)), mark(x2)), MARK(head(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2)), MARK(head(0))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2)), MARK(head(nil))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (141) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (142) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (143) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(2nd(z0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(2nd(z0))) by A__SEL(s(2nd(x0)), cons(x1, from(z0))) -> c10(A__SEL(a__2nd(mark(x0)), a__from(mark(z0))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, head(z0))) -> c10(A__SEL(a__2nd(mark(x0)), a__head(mark(z0))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 2nd(z0))) -> c10(A__SEL(a__2nd(mark(x0)), a__2nd(mark(z0))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, take(z0, z1))) -> c10(A__SEL(a__2nd(mark(x0)), a__take(mark(z0), mark(z1))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, sel(z0, z1))) -> c10(A__SEL(a__2nd(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, cons(z0, z1))) -> c10(A__SEL(a__2nd(mark(x0)), cons(mark(z0), z1)), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(A__SEL(a__2nd(mark(x0)), 0), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(A__SEL(a__2nd(mark(x0)), nil), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(A__SEL(2nd(mark(x0)), mark(x2)), MARK(2nd(x0))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2)), MARK(2nd(0))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2)), MARK(2nd(nil))) ---------------------------------------- (144) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(A__SEL(a__2nd(mark(x0)), 0), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(A__SEL(a__2nd(mark(x0)), nil), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(A__SEL(2nd(mark(x0)), mark(x2)), MARK(2nd(x0))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2)), MARK(2nd(0))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2)), MARK(2nd(nil))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(A__SEL(a__2nd(mark(x0)), 0), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(A__SEL(a__2nd(mark(x0)), nil), MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(A__SEL(2nd(mark(x0)), mark(x2)), MARK(2nd(x0))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2)), MARK(2nd(0))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2)), MARK(2nd(nil))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (145) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (146) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (147) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(take(z0, z1))) by A__SEL(s(take(x0, x1)), cons(x2, from(z0))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), a__from(mark(z0))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, head(z0))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), a__head(mark(z0))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 2nd(z0))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), a__2nd(mark(z0))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, take(z0, z1))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), a__take(mark(z0), mark(z1))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, sel(z0, z1))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, cons(z0, z1))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(A__SEL(a__take(mark(x0), mark(x1)), 0), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(A__SEL(a__take(mark(x0), mark(x1)), nil), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(take(x0, x1))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) ---------------------------------------- (148) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(A__SEL(a__take(mark(x0), mark(x1)), 0), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(A__SEL(a__take(mark(x0), mark(x1)), nil), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(take(x0, x1))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(A__SEL(a__take(mark(x0), mark(x1)), 0), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(A__SEL(a__take(mark(x0), mark(x1)), nil), MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(take(x0, x1))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (149) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (150) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (151) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(sel(z0, z1))) by A__SEL(s(sel(x0, x1)), cons(x2, from(z0))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), a__from(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, head(z0))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), a__head(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 2nd(z0))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), a__2nd(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, take(z0, z1))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), a__take(mark(z0), mark(z1))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, sel(z0, z1))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, cons(z0, z1))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(sel(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) ---------------------------------------- (152) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(sel(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(sel(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (153) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (154) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_2, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (155) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(s(z0)), cons(x1, x2)) -> c10(A__SEL(s(mark(z0)), mark(x2)), MARK(s(z0))) by A__SEL(s(s(x0)), cons(x1, from(z0))) -> c10(A__SEL(s(mark(x0)), a__from(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, head(z0))) -> c10(A__SEL(s(mark(x0)), a__head(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 2nd(z0))) -> c10(A__SEL(s(mark(x0)), a__2nd(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, take(z0, z1))) -> c10(A__SEL(s(mark(x0)), a__take(mark(z0), mark(z1))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, sel(z0, z1))) -> c10(A__SEL(s(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, cons(z0, z1))) -> c10(A__SEL(s(mark(x0)), cons(mark(z0), z1)), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(A__SEL(s(mark(x0)), 0), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(A__SEL(s(mark(x0)), nil), MARK(s(x0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) ---------------------------------------- (156) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(A__SEL(s(mark(x0)), 0), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(A__SEL(s(mark(x0)), nil), MARK(s(x0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(A__SEL(s(mark(x0)), 0), MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(A__SEL(s(mark(x0)), nil), MARK(s(x0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (157) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (158) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (159) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(0), cons(x1, x2)) -> c10(A__SEL(0, mark(x2))) by A__SEL(s(0), cons(x0, from(z0))) -> c10(A__SEL(0, a__from(mark(z0)))) A__SEL(s(0), cons(x0, head(z0))) -> c10(A__SEL(0, a__head(mark(z0)))) A__SEL(s(0), cons(x0, 2nd(z0))) -> c10(A__SEL(0, a__2nd(mark(z0)))) A__SEL(s(0), cons(x0, take(z0, z1))) -> c10(A__SEL(0, a__take(mark(z0), mark(z1)))) A__SEL(s(0), cons(x0, sel(z0, z1))) -> c10(A__SEL(0, a__sel(mark(z0), mark(z1)))) A__SEL(s(0), cons(x0, cons(z0, z1))) -> c10(A__SEL(0, cons(mark(z0), z1))) A__SEL(s(0), cons(x0, s(z0))) -> c10(A__SEL(0, s(mark(z0)))) A__SEL(s(0), cons(x0, 0)) -> c10(A__SEL(0, 0)) A__SEL(s(0), cons(x0, nil)) -> c10(A__SEL(0, nil)) ---------------------------------------- (160) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(0), cons(x0, s(z0))) -> c10(A__SEL(0, s(mark(z0)))) A__SEL(s(0), cons(x0, 0)) -> c10(A__SEL(0, 0)) A__SEL(s(0), cons(x0, nil)) -> c10(A__SEL(0, nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(0), cons(x0, s(z0))) -> c10(A__SEL(0, s(mark(z0)))) A__SEL(s(0), cons(x0, 0)) -> c10(A__SEL(0, 0)) A__SEL(s(0), cons(x0, nil)) -> c10(A__SEL(0, nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (161) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: A__SEL(s(0), cons(x0, s(z0))) -> c10(A__SEL(0, s(mark(z0)))) A__SEL(s(0), cons(x0, nil)) -> c10(A__SEL(0, nil)) A__SEL(s(0), cons(x0, 0)) -> c10(A__SEL(0, 0)) ---------------------------------------- (162) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (163) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, from(z0))) -> c11(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) by A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(A__SEL(nil, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) ---------------------------------------- (164) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(A__SEL(nil, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(A__SEL(nil, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (165) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (166) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (167) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, head(z0))) -> c11(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) by A__SEL(s(x0), cons(x1, head(x2))) -> c11(A__SEL(mark(x0), head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0)), MARK(head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil)), MARK(head(nil))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(A__SEL(nil, a__head(mark(x2))), MARK(head(x2))) ---------------------------------------- (168) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(A__SEL(mark(x0), head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0)), MARK(head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil)), MARK(head(nil))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(A__SEL(nil, a__head(mark(x2))), MARK(head(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(A__SEL(mark(x0), head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0)), MARK(head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil)), MARK(head(nil))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(A__SEL(nil, a__head(mark(x2))), MARK(head(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (169) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (170) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (171) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, 2nd(z0))) -> c11(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) by A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(A__SEL(mark(x0), 2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0)), MARK(2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil)), MARK(2nd(nil))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(A__SEL(nil, a__2nd(mark(x2))), MARK(2nd(x2))) ---------------------------------------- (172) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(A__SEL(mark(x0), 2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0)), MARK(2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil)), MARK(2nd(nil))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(A__SEL(nil, a__2nd(mark(x2))), MARK(2nd(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(A__SEL(mark(x0), 2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0)), MARK(2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil)), MARK(2nd(nil))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(cons(mark(z0), z1), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(A__SEL(nil, a__2nd(mark(x2))), MARK(2nd(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (173) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 5 trailing tuple parts ---------------------------------------- (174) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (175) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, take(z0, z1))) -> c11(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) by A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(A__SEL(nil, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) ---------------------------------------- (176) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(A__SEL(nil, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(A__SEL(mark(x0), take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(A__SEL(nil, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (177) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (178) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (179) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, sel(z0, z1))) -> c11(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) by A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) ---------------------------------------- (180) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(A__SEL(mark(x0), sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(A__SEL(nil, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (181) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (182) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (183) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(x0), cons(x1, cons(z0, z1))) -> c11(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) by A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(A__SEL(nil, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) ---------------------------------------- (184) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(A__SEL(nil, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(cons(mark(z0), z1), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(A__SEL(nil, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (185) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (186) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (187) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(from(z0)), cons(x1, x2)) -> c11(A__SEL(a__from(mark(z0)), mark(x2)), MARK(x2)) by A__SEL(s(from(x0)), cons(x1, from(z0))) -> c11(A__SEL(a__from(mark(x0)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(from(x0)), cons(x1, head(z0))) -> c11(A__SEL(a__from(mark(x0)), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(from(x0)), cons(x1, 2nd(z0))) -> c11(A__SEL(a__from(mark(x0)), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(from(x0)), cons(x1, take(z0, z1))) -> c11(A__SEL(a__from(mark(x0)), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(from(x0)), cons(x1, sel(z0, z1))) -> c11(A__SEL(a__from(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(from(x0)), cons(x1, cons(z0, z1))) -> c11(A__SEL(a__from(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c11(A__SEL(a__from(mark(x0)), 0), MARK(0)) A__SEL(s(from(x0)), cons(x1, nil)) -> c11(A__SEL(a__from(mark(x0)), nil), MARK(nil)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) ---------------------------------------- (188) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c11(A__SEL(a__from(mark(x0)), 0), MARK(0)) A__SEL(s(from(x0)), cons(x1, nil)) -> c11(A__SEL(a__from(mark(x0)), nil), MARK(nil)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c11(A__SEL(a__from(mark(x0)), 0), MARK(0)) A__SEL(s(from(x0)), cons(x1, nil)) -> c11(A__SEL(a__from(mark(x0)), nil), MARK(nil)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (189) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(from(x0)), cons(x1, nil)) -> c11(A__SEL(a__from(mark(x0)), nil), MARK(nil)) A__SEL(s(from(x0)), cons(x1, 0)) -> c11(A__SEL(a__from(mark(x0)), 0), MARK(0)) ---------------------------------------- (190) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__from(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(cons(mark(mark(x0)), from(s(mark(x0)))), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(A__SEL(from(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (191) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (192) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (193) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(head(z0)), cons(x1, x2)) -> c11(A__SEL(a__head(mark(z0)), mark(x2)), MARK(x2)) by A__SEL(s(head(x0)), cons(x1, from(z0))) -> c11(A__SEL(a__head(mark(x0)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(head(x0)), cons(x1, head(z0))) -> c11(A__SEL(a__head(mark(x0)), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(head(x0)), cons(x1, 2nd(z0))) -> c11(A__SEL(a__head(mark(x0)), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(head(x0)), cons(x1, take(z0, z1))) -> c11(A__SEL(a__head(mark(x0)), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(head(x0)), cons(x1, sel(z0, z1))) -> c11(A__SEL(a__head(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(head(x0)), cons(x1, cons(z0, z1))) -> c11(A__SEL(a__head(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c11(A__SEL(a__head(mark(x0)), 0), MARK(0)) A__SEL(s(head(x0)), cons(x1, nil)) -> c11(A__SEL(a__head(mark(x0)), nil), MARK(nil)) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(A__SEL(head(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) ---------------------------------------- (194) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c11(A__SEL(a__head(mark(x0)), 0), MARK(0)) A__SEL(s(head(x0)), cons(x1, nil)) -> c11(A__SEL(a__head(mark(x0)), nil), MARK(nil)) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(A__SEL(head(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c11(A__SEL(a__head(mark(x0)), 0), MARK(0)) A__SEL(s(head(x0)), cons(x1, nil)) -> c11(A__SEL(a__head(mark(x0)), nil), MARK(nil)) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(A__SEL(head(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (195) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(head(x0)), cons(x1, 0)) -> c11(A__SEL(a__head(mark(x0)), 0), MARK(0)) A__SEL(s(head(x0)), cons(x1, nil)) -> c11(A__SEL(a__head(mark(x0)), nil), MARK(nil)) ---------------------------------------- (196) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(A__SEL(head(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__head(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(A__SEL(head(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (197) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (198) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (199) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(2nd(z0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(mark(z0)), mark(x2)), MARK(x2)) by A__SEL(s(2nd(x0)), cons(x1, from(z0))) -> c11(A__SEL(a__2nd(mark(x0)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(2nd(x0)), cons(x1, head(z0))) -> c11(A__SEL(a__2nd(mark(x0)), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(2nd(x0)), cons(x1, 2nd(z0))) -> c11(A__SEL(a__2nd(mark(x0)), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(2nd(x0)), cons(x1, take(z0, z1))) -> c11(A__SEL(a__2nd(mark(x0)), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(2nd(x0)), cons(x1, sel(z0, z1))) -> c11(A__SEL(a__2nd(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(2nd(x0)), cons(x1, cons(z0, z1))) -> c11(A__SEL(a__2nd(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c11(A__SEL(a__2nd(mark(x0)), 0), MARK(0)) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c11(A__SEL(a__2nd(mark(x0)), nil), MARK(nil)) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(A__SEL(2nd(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) ---------------------------------------- (200) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c11(A__SEL(a__2nd(mark(x0)), 0), MARK(0)) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c11(A__SEL(a__2nd(mark(x0)), nil), MARK(nil)) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(A__SEL(2nd(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c11(A__SEL(a__2nd(mark(x0)), 0), MARK(0)) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c11(A__SEL(a__2nd(mark(x0)), nil), MARK(nil)) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(A__SEL(2nd(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (201) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(2nd(x0)), cons(x1, nil)) -> c11(A__SEL(a__2nd(mark(x0)), nil), MARK(nil)) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c11(A__SEL(a__2nd(mark(x0)), 0), MARK(0)) ---------------------------------------- (202) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(A__SEL(2nd(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(A__SEL(a__2nd(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(A__SEL(2nd(mark(x0)), mark(x2)), MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (203) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (204) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (205) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(take(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__take(mark(z0), mark(z1)), mark(x2)), MARK(x2)) by A__SEL(s(take(x0, x1)), cons(x2, from(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(take(x0, x1)), cons(x2, head(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(take(x0, x1)), cons(x2, 2nd(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(take(x0, x1)), cons(x2, take(z0, z1))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(take(x0, x1)), cons(x2, sel(z0, z1))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(take(x0, x1)), cons(x2, cons(z0, z1))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) ---------------------------------------- (206) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (207) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__take(mark(x0), mark(x1)), nil), MARK(nil)) ---------------------------------------- (208) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__take(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(A__SEL(take(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (209) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (210) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (211) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(sel(z0, z1)), cons(x1, x2)) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), mark(x2)), MARK(x2)) by A__SEL(s(sel(x0, x1)), cons(x2, from(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(sel(x0, x1)), cons(x2, head(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(sel(x0, x1)), cons(x2, 2nd(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(sel(x0, x1)), cons(x2, take(z0, z1))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(sel(x0, x1)), cons(x2, sel(z0, z1))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(sel(x0, x1)), cons(x2, cons(z0, z1))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) ---------------------------------------- (212) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (213) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), nil), MARK(nil)) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), 0), MARK(0)) ---------------------------------------- (214) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(A__SEL(a__sel(mark(x0), mark(x1)), s(mark(z0))), MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(A__SEL(sel(mark(x0), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (215) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (216) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (217) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(s(z0)), cons(x1, x2)) -> c11(A__SEL(s(mark(z0)), mark(x2)), MARK(x2)) by A__SEL(s(s(x0)), cons(x1, from(z0))) -> c11(A__SEL(s(mark(x0)), a__from(mark(z0))), MARK(from(z0))) A__SEL(s(s(x0)), cons(x1, head(z0))) -> c11(A__SEL(s(mark(x0)), a__head(mark(z0))), MARK(head(z0))) A__SEL(s(s(x0)), cons(x1, 2nd(z0))) -> c11(A__SEL(s(mark(x0)), a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(s(x0)), cons(x1, take(z0, z1))) -> c11(A__SEL(s(mark(x0)), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(s(x0)), cons(x1, sel(z0, z1))) -> c11(A__SEL(s(mark(x0)), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(s(x0)), cons(x1, cons(z0, z1))) -> c11(A__SEL(s(mark(x0)), cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c11(A__SEL(s(mark(x0)), 0), MARK(0)) A__SEL(s(s(x0)), cons(x1, nil)) -> c11(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) ---------------------------------------- (218) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c11(A__SEL(s(mark(x0)), 0), MARK(0)) A__SEL(s(s(x0)), cons(x1, nil)) -> c11(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c11(A__SEL(s(mark(x0)), 0), MARK(0)) A__SEL(s(s(x0)), cons(x1, nil)) -> c11(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (219) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(s(x0)), cons(x1, nil)) -> c11(A__SEL(s(mark(x0)), nil), MARK(nil)) A__SEL(s(s(x0)), cons(x1, 0)) -> c11(A__SEL(s(mark(x0)), 0), MARK(0)) ---------------------------------------- (220) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(A__SEL(s(mark(x0)), s(mark(z0))), MARK(s(z0))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (221) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (222) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_2, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2 ---------------------------------------- (223) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace A__SEL(s(0), cons(x1, x2)) -> c11(A__SEL(0, mark(x2)), MARK(x2)) by A__SEL(s(0), cons(x0, from(z0))) -> c11(A__SEL(0, a__from(mark(z0))), MARK(from(z0))) A__SEL(s(0), cons(x0, head(z0))) -> c11(A__SEL(0, a__head(mark(z0))), MARK(head(z0))) A__SEL(s(0), cons(x0, 2nd(z0))) -> c11(A__SEL(0, a__2nd(mark(z0))), MARK(2nd(z0))) A__SEL(s(0), cons(x0, take(z0, z1))) -> c11(A__SEL(0, a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) A__SEL(s(0), cons(x0, sel(z0, z1))) -> c11(A__SEL(0, a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) A__SEL(s(0), cons(x0, cons(z0, z1))) -> c11(A__SEL(0, cons(mark(z0), z1)), MARK(cons(z0, z1))) A__SEL(s(0), cons(x0, s(z0))) -> c11(A__SEL(0, s(mark(z0))), MARK(s(z0))) A__SEL(s(0), cons(x0, 0)) -> c11(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c11(A__SEL(0, nil), MARK(nil)) ---------------------------------------- (224) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(A__SEL(0, s(mark(z0))), MARK(s(z0))) A__SEL(s(0), cons(x0, 0)) -> c11(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c11(A__SEL(0, nil), MARK(nil)) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(A__SEL(0, s(mark(z0))), MARK(s(z0))) A__SEL(s(0), cons(x0, 0)) -> c11(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c11(A__SEL(0, nil), MARK(nil)) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2, c11_2 ---------------------------------------- (225) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: A__SEL(s(0), cons(x0, 0)) -> c11(A__SEL(0, 0), MARK(0)) A__SEL(s(0), cons(x0, nil)) -> c11(A__SEL(0, nil), MARK(nil)) ---------------------------------------- (226) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(A__SEL(0, s(mark(z0))), MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(A__SEL(0, s(mark(z0))), MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2, c11_2 ---------------------------------------- (227) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (228) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(MARK(s(z0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(MARK(s(z0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2, c11_2 ---------------------------------------- (229) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(head(from(z0))) -> c14(A__HEAD(a__from(mark(z0))), MARK(from(z0))) by MARK(head(from(x0))) -> c14(A__HEAD(cons(mark(mark(x0)), from(s(mark(x0))))), MARK(from(x0))) MARK(head(from(x0))) -> c14(A__HEAD(from(mark(x0))), MARK(from(x0))) MARK(head(from(from(z0)))) -> c14(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(head(from(head(z0)))) -> c14(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) MARK(head(from(2nd(z0)))) -> c14(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) MARK(head(from(take(z0, z1)))) -> c14(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) MARK(head(from(sel(z0, z1)))) -> c14(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(head(from(cons(z0, z1)))) -> c14(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(head(from(s(z0)))) -> c14(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(head(from(0))) -> c14(A__HEAD(a__from(0)), MARK(from(0))) MARK(head(from(nil))) -> c14(A__HEAD(a__from(nil)), MARK(from(nil))) MARK(head(from(x0))) -> c14(MARK(from(x0))) ---------------------------------------- (230) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(MARK(s(z0))) MARK(head(from(x0))) -> c14(A__HEAD(cons(mark(mark(x0)), from(s(mark(x0))))), MARK(from(x0))) MARK(head(from(x0))) -> c14(A__HEAD(from(mark(x0))), MARK(from(x0))) MARK(head(from(from(z0)))) -> c14(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(head(from(head(z0)))) -> c14(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) MARK(head(from(2nd(z0)))) -> c14(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) MARK(head(from(take(z0, z1)))) -> c14(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) MARK(head(from(sel(z0, z1)))) -> c14(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(head(from(cons(z0, z1)))) -> c14(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(head(from(s(z0)))) -> c14(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(head(from(0))) -> c14(A__HEAD(a__from(0)), MARK(from(0))) MARK(head(from(nil))) -> c14(A__HEAD(a__from(nil)), MARK(from(nil))) MARK(head(from(x0))) -> c14(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(MARK(s(z0))) MARK(head(from(x0))) -> c14(A__HEAD(cons(mark(mark(x0)), from(s(mark(x0))))), MARK(from(x0))) MARK(head(from(x0))) -> c14(A__HEAD(from(mark(x0))), MARK(from(x0))) MARK(head(from(from(z0)))) -> c14(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(head(from(head(z0)))) -> c14(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) MARK(head(from(2nd(z0)))) -> c14(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) MARK(head(from(take(z0, z1)))) -> c14(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) MARK(head(from(sel(z0, z1)))) -> c14(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(head(from(cons(z0, z1)))) -> c14(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(head(from(s(z0)))) -> c14(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(head(from(0))) -> c14(A__HEAD(a__from(0)), MARK(from(0))) MARK(head(from(nil))) -> c14(A__HEAD(a__from(nil)), MARK(from(nil))) MARK(head(from(x0))) -> c14(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2, c11_2 ---------------------------------------- (231) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (232) Obligation: Complexity Dependency Tuples Problem Rules: a__from(z0) -> cons(mark(z0), from(s(z0))) a__from(z0) -> from(z0) a__head(cons(z0, z1)) -> mark(z0) a__head(z0) -> head(z0) a__2nd(cons(z0, z1)) -> a__head(mark(z1)) a__2nd(z0) -> 2nd(z0) a__take(0, z0) -> nil a__take(s(z0), cons(z1, z2)) -> cons(mark(z1), take(z0, z2)) a__take(z0, z1) -> take(z0, z1) a__sel(0, cons(z0, z1)) -> mark(z0) a__sel(s(z0), cons(z1, z2)) -> a__sel(mark(z0), mark(z2)) a__sel(z0, z1) -> sel(z0, z1) mark(from(z0)) -> a__from(mark(z0)) mark(head(z0)) -> a__head(mark(z0)) mark(2nd(z0)) -> a__2nd(mark(z0)) mark(take(z0, z1)) -> a__take(mark(z0), mark(z1)) mark(sel(z0, z1)) -> a__sel(mark(z0), mark(z1)) mark(cons(z0, z1)) -> cons(mark(z0), z1) mark(s(z0)) -> s(mark(z0)) mark(0) -> 0 mark(nil) -> nil Tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(MARK(s(z0))) MARK(head(from(x0))) -> c14(A__HEAD(cons(mark(mark(x0)), from(s(mark(x0))))), MARK(from(x0))) MARK(head(from(from(z0)))) -> c14(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(head(from(head(z0)))) -> c14(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) MARK(head(from(2nd(z0)))) -> c14(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) MARK(head(from(take(z0, z1)))) -> c14(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) MARK(head(from(sel(z0, z1)))) -> c14(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(head(from(cons(z0, z1)))) -> c14(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(head(from(s(z0)))) -> c14(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(head(from(0))) -> c14(A__HEAD(a__from(0)), MARK(from(0))) MARK(head(from(nil))) -> c14(A__HEAD(a__from(nil)), MARK(from(nil))) MARK(head(from(x0))) -> c14(MARK(from(x0))) S tuples: A__FROM(z0) -> c(MARK(z0)) A__HEAD(cons(z0, z1)) -> c2(MARK(z0)) A__TAKE(s(z0), cons(z1, z2)) -> c7(MARK(z1)) A__SEL(0, cons(z0, z1)) -> c9(MARK(z0)) MARK(from(z0)) -> c13(A__FROM(mark(z0)), MARK(z0)) MARK(cons(z0, z1)) -> c20(MARK(z0)) MARK(s(z0)) -> c21(MARK(z0)) A__2ND(cons(x0, cons(z0, z1))) -> c4(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) A__2ND(cons(x0, s(z0))) -> c4(MARK(s(z0))) A__SEL(s(x0), cons(x1, s(z0))) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, 0)) -> c10(MARK(x0)) A__SEL(s(x0), cons(x1, nil)) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c10(MARK(cons(z0, z1))) A__SEL(s(x0), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(nil), cons(x1, x2)) -> c11(MARK(x2)) MARK(head(head(z0))) -> c14(A__HEAD(a__head(mark(z0))), MARK(head(z0))) MARK(head(2nd(z0))) -> c14(A__HEAD(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(head(take(z0, z1))) -> c14(A__HEAD(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(head(sel(z0, z1))) -> c14(A__HEAD(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(head(cons(z0, z1))) -> c14(A__HEAD(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(head(s(z0))) -> c14(MARK(s(z0))) MARK(2nd(from(z0))) -> c15(A__2ND(a__from(mark(z0))), MARK(from(z0))) MARK(2nd(head(z0))) -> c15(A__2ND(a__head(mark(z0))), MARK(head(z0))) MARK(2nd(2nd(z0))) -> c15(A__2ND(a__2nd(mark(z0))), MARK(2nd(z0))) MARK(2nd(take(z0, z1))) -> c15(A__2ND(a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(2nd(sel(z0, z1))) -> c15(A__2ND(a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(2nd(cons(z0, z1))) -> c15(A__2ND(cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(2nd(s(z0))) -> c15(MARK(s(z0))) MARK(take(x0, from(z0))) -> c16(A__TAKE(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(take(x0, head(z0))) -> c16(A__TAKE(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(take(x0, 2nd(z0))) -> c16(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(take(x0, take(z0, z1))) -> c16(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, sel(z0, z1))) -> c16(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(take(x0, cons(z0, z1))) -> c16(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(take(from(z0), x1)) -> c16(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(take(head(z0), x1)) -> c16(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(take(2nd(z0), x1)) -> c16(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(take(take(z0, z1), x1)) -> c16(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(take(sel(z0, z1), x1)) -> c16(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(take(s(z0), x1)) -> c16(A__TAKE(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(take(x0, s(z0))) -> c16(MARK(x0)) MARK(take(x0, 0)) -> c16(MARK(x0)) MARK(take(x0, nil)) -> c16(MARK(x0)) MARK(take(cons(z0, z1), x1)) -> c16(MARK(cons(z0, z1))) MARK(take(x0, from(z0))) -> c17(A__TAKE(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(take(x0, head(z0))) -> c17(A__TAKE(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(take(x0, 2nd(z0))) -> c17(A__TAKE(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(take(x0, take(z0, z1))) -> c17(A__TAKE(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(take(x0, sel(z0, z1))) -> c17(A__TAKE(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(take(x0, cons(z0, z1))) -> c17(A__TAKE(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(take(from(z0), x1)) -> c17(A__TAKE(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(take(head(z0), x1)) -> c17(A__TAKE(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(take(2nd(z0), x1)) -> c17(A__TAKE(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(take(take(z0, z1), x1)) -> c17(A__TAKE(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(sel(z0, z1), x1)) -> c17(A__TAKE(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(take(s(z0), x1)) -> c17(A__TAKE(s(mark(z0)), mark(x1)), MARK(x1)) MARK(take(x0, s(z0))) -> c17(MARK(s(z0))) MARK(take(cons(z0, z1), x1)) -> c17(MARK(x1)) MARK(take(0, x1)) -> c17(MARK(x1)) MARK(take(nil, x1)) -> c17(MARK(x1)) MARK(sel(x0, from(z0))) -> c18(A__SEL(mark(x0), a__from(mark(z0))), MARK(x0)) MARK(sel(x0, head(z0))) -> c18(A__SEL(mark(x0), a__head(mark(z0))), MARK(x0)) MARK(sel(x0, 2nd(z0))) -> c18(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(x0)) MARK(sel(x0, take(z0, z1))) -> c18(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, sel(z0, z1))) -> c18(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(x0)) MARK(sel(x0, cons(z0, z1))) -> c18(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(x0)) MARK(sel(from(z0), x1)) -> c18(A__SEL(a__from(mark(z0)), mark(x1)), MARK(from(z0))) MARK(sel(head(z0), x1)) -> c18(A__SEL(a__head(mark(z0)), mark(x1)), MARK(head(z0))) MARK(sel(2nd(z0), x1)) -> c18(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(2nd(z0))) MARK(sel(take(z0, z1), x1)) -> c18(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(take(z0, z1))) MARK(sel(sel(z0, z1), x1)) -> c18(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(sel(z0, z1))) MARK(sel(s(z0), x1)) -> c18(A__SEL(s(mark(z0)), mark(x1)), MARK(s(z0))) MARK(sel(x0, s(z0))) -> c18(MARK(x0)) MARK(sel(x0, 0)) -> c18(MARK(x0)) MARK(sel(x0, nil)) -> c18(MARK(x0)) MARK(sel(cons(z0, z1), x1)) -> c18(MARK(cons(z0, z1))) MARK(sel(0, x1)) -> c18(A__SEL(0, mark(x1))) MARK(sel(x0, from(z0))) -> c19(A__SEL(mark(x0), a__from(mark(z0))), MARK(from(z0))) MARK(sel(x0, head(z0))) -> c19(A__SEL(mark(x0), a__head(mark(z0))), MARK(head(z0))) MARK(sel(x0, 2nd(z0))) -> c19(A__SEL(mark(x0), a__2nd(mark(z0))), MARK(2nd(z0))) MARK(sel(x0, take(z0, z1))) -> c19(A__SEL(mark(x0), a__take(mark(z0), mark(z1))), MARK(take(z0, z1))) MARK(sel(x0, sel(z0, z1))) -> c19(A__SEL(mark(x0), a__sel(mark(z0), mark(z1))), MARK(sel(z0, z1))) MARK(sel(x0, cons(z0, z1))) -> c19(A__SEL(mark(x0), cons(mark(z0), z1)), MARK(cons(z0, z1))) MARK(sel(from(z0), x1)) -> c19(A__SEL(a__from(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(head(z0), x1)) -> c19(A__SEL(a__head(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(2nd(z0), x1)) -> c19(A__SEL(a__2nd(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(take(z0, z1), x1)) -> c19(A__SEL(a__take(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(sel(z0, z1), x1)) -> c19(A__SEL(a__sel(mark(z0), mark(z1)), mark(x1)), MARK(x1)) MARK(sel(s(z0), x1)) -> c19(A__SEL(s(mark(z0)), mark(x1)), MARK(x1)) MARK(sel(0, x1)) -> c19(A__SEL(0, mark(x1)), MARK(x1)) MARK(sel(x0, s(z0))) -> c19(MARK(s(z0))) MARK(sel(cons(z0, z1), x1)) -> c19(MARK(x1)) MARK(sel(nil, x1)) -> c19(MARK(x1)) A__2ND(cons(x0, from(x1))) -> c4(A__HEAD(cons(mark(mark(x1)), from(s(mark(x1))))), MARK(from(x1))) A__2ND(cons(x0, from(from(z0)))) -> c4(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__2ND(cons(x0, from(head(z0)))) -> c4(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__2ND(cons(x0, from(2nd(z0)))) -> c4(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__2ND(cons(x0, from(take(z0, z1)))) -> c4(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__2ND(cons(x0, from(sel(z0, z1)))) -> c4(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__2ND(cons(x0, from(cons(z0, z1)))) -> c4(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__2ND(cons(x0, from(s(z0)))) -> c4(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) A__2ND(cons(x0, from(0))) -> c4(A__HEAD(a__from(0)), MARK(from(0))) A__2ND(cons(x0, from(nil))) -> c4(A__HEAD(a__from(nil)), MARK(from(nil))) A__2ND(cons(x0, from(x1))) -> c4(MARK(from(x1))) A__2ND(cons(x0, head(from(z0)))) -> c4(A__HEAD(a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__2ND(cons(x0, head(head(z0)))) -> c4(A__HEAD(a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__2ND(cons(x0, head(2nd(z0)))) -> c4(A__HEAD(a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__2ND(cons(x0, head(take(z0, z1)))) -> c4(A__HEAD(a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__2ND(cons(x0, head(sel(z0, z1)))) -> c4(A__HEAD(a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__2ND(cons(x0, head(cons(z0, z1)))) -> c4(A__HEAD(a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__2ND(cons(x0, head(s(z0)))) -> c4(A__HEAD(a__head(s(mark(z0)))), MARK(head(s(z0)))) A__2ND(cons(x0, head(x1))) -> c4(MARK(head(x1))) A__2ND(cons(x0, head(0))) -> c4(A__HEAD(a__head(0))) A__2ND(cons(x0, head(nil))) -> c4(A__HEAD(a__head(nil))) A__2ND(cons(x0, 2nd(from(z0)))) -> c4(A__HEAD(a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__2ND(cons(x0, 2nd(head(z0)))) -> c4(A__HEAD(a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__2ND(cons(x0, 2nd(2nd(z0)))) -> c4(A__HEAD(a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__2ND(cons(x0, 2nd(take(z0, z1)))) -> c4(A__HEAD(a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__2ND(cons(x0, 2nd(sel(z0, z1)))) -> c4(A__HEAD(a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__2ND(cons(x0, 2nd(cons(z0, z1)))) -> c4(A__HEAD(a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__2ND(cons(x0, 2nd(s(z0)))) -> c4(A__HEAD(a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__2ND(cons(x0, 2nd(x1))) -> c4(MARK(2nd(x1))) A__2ND(cons(x0, 2nd(0))) -> c4(A__HEAD(a__2nd(0))) A__2ND(cons(x0, 2nd(nil))) -> c4(A__HEAD(a__2nd(nil))) A__2ND(cons(x0, take(x1, from(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__from(mark(z0)))), MARK(take(x1, from(z0)))) A__2ND(cons(x0, take(x1, head(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__head(mark(z0)))), MARK(take(x1, head(z0)))) A__2ND(cons(x0, take(x1, 2nd(z0)))) -> c4(A__HEAD(a__take(mark(x1), a__2nd(mark(z0)))), MARK(take(x1, 2nd(z0)))) A__2ND(cons(x0, take(x1, take(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__take(mark(z0), mark(z1)))), MARK(take(x1, take(z0, z1)))) A__2ND(cons(x0, take(x1, sel(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(take(x1, sel(z0, z1)))) A__2ND(cons(x0, take(x1, cons(z0, z1)))) -> c4(A__HEAD(a__take(mark(x1), cons(mark(z0), z1))), MARK(take(x1, cons(z0, z1)))) A__2ND(cons(x0, take(x1, s(z0)))) -> c4(A__HEAD(a__take(mark(x1), s(mark(z0)))), MARK(take(x1, s(z0)))) A__2ND(cons(x0, take(x1, 0))) -> c4(A__HEAD(a__take(mark(x1), 0)), MARK(take(x1, 0))) A__2ND(cons(x0, take(x1, nil))) -> c4(A__HEAD(a__take(mark(x1), nil)), MARK(take(x1, nil))) A__2ND(cons(x0, take(from(z0), x2))) -> c4(A__HEAD(a__take(a__from(mark(z0)), mark(x2))), MARK(take(from(z0), x2))) A__2ND(cons(x0, take(head(z0), x2))) -> c4(A__HEAD(a__take(a__head(mark(z0)), mark(x2))), MARK(take(head(z0), x2))) A__2ND(cons(x0, take(2nd(z0), x2))) -> c4(A__HEAD(a__take(a__2nd(mark(z0)), mark(x2))), MARK(take(2nd(z0), x2))) A__2ND(cons(x0, take(take(z0, z1), x2))) -> c4(A__HEAD(a__take(a__take(mark(z0), mark(z1)), mark(x2))), MARK(take(take(z0, z1), x2))) A__2ND(cons(x0, take(sel(z0, z1), x2))) -> c4(A__HEAD(a__take(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(take(sel(z0, z1), x2))) A__2ND(cons(x0, take(cons(z0, z1), x2))) -> c4(A__HEAD(a__take(cons(mark(z0), z1), mark(x2))), MARK(take(cons(z0, z1), x2))) A__2ND(cons(x0, take(s(z0), x2))) -> c4(A__HEAD(a__take(s(mark(z0)), mark(x2))), MARK(take(s(z0), x2))) A__2ND(cons(x0, take(0, x2))) -> c4(A__HEAD(a__take(0, mark(x2))), MARK(take(0, x2))) A__2ND(cons(x0, take(nil, x2))) -> c4(A__HEAD(a__take(nil, mark(x2))), MARK(take(nil, x2))) A__2ND(cons(x0, take(x1, x2))) -> c4(MARK(take(x1, x2))) A__2ND(cons(x0, sel(x1, from(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__from(mark(z0)))), MARK(sel(x1, from(z0)))) A__2ND(cons(x0, sel(x1, head(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__head(mark(z0)))), MARK(sel(x1, head(z0)))) A__2ND(cons(x0, sel(x1, 2nd(z0)))) -> c4(A__HEAD(a__sel(mark(x1), a__2nd(mark(z0)))), MARK(sel(x1, 2nd(z0)))) A__2ND(cons(x0, sel(x1, take(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__take(mark(z0), mark(z1)))), MARK(sel(x1, take(z0, z1)))) A__2ND(cons(x0, sel(x1, sel(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), a__sel(mark(z0), mark(z1)))), MARK(sel(x1, sel(z0, z1)))) A__2ND(cons(x0, sel(x1, cons(z0, z1)))) -> c4(A__HEAD(a__sel(mark(x1), cons(mark(z0), z1))), MARK(sel(x1, cons(z0, z1)))) A__2ND(cons(x0, sel(x1, s(z0)))) -> c4(A__HEAD(a__sel(mark(x1), s(mark(z0)))), MARK(sel(x1, s(z0)))) A__2ND(cons(x0, sel(x1, 0))) -> c4(A__HEAD(a__sel(mark(x1), 0)), MARK(sel(x1, 0))) A__2ND(cons(x0, sel(x1, nil))) -> c4(A__HEAD(a__sel(mark(x1), nil)), MARK(sel(x1, nil))) A__2ND(cons(x0, sel(from(z0), x2))) -> c4(A__HEAD(a__sel(a__from(mark(z0)), mark(x2))), MARK(sel(from(z0), x2))) A__2ND(cons(x0, sel(head(z0), x2))) -> c4(A__HEAD(a__sel(a__head(mark(z0)), mark(x2))), MARK(sel(head(z0), x2))) A__2ND(cons(x0, sel(2nd(z0), x2))) -> c4(A__HEAD(a__sel(a__2nd(mark(z0)), mark(x2))), MARK(sel(2nd(z0), x2))) A__2ND(cons(x0, sel(take(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__take(mark(z0), mark(z1)), mark(x2))), MARK(sel(take(z0, z1), x2))) A__2ND(cons(x0, sel(sel(z0, z1), x2))) -> c4(A__HEAD(a__sel(a__sel(mark(z0), mark(z1)), mark(x2))), MARK(sel(sel(z0, z1), x2))) A__2ND(cons(x0, sel(cons(z0, z1), x2))) -> c4(A__HEAD(a__sel(cons(mark(z0), z1), mark(x2))), MARK(sel(cons(z0, z1), x2))) A__2ND(cons(x0, sel(s(z0), x2))) -> c4(A__HEAD(a__sel(s(mark(z0)), mark(x2))), MARK(sel(s(z0), x2))) A__2ND(cons(x0, sel(0, x2))) -> c4(A__HEAD(a__sel(0, mark(x2))), MARK(sel(0, x2))) A__2ND(cons(x0, sel(nil, x2))) -> c4(A__HEAD(a__sel(nil, mark(x2))), MARK(sel(nil, x2))) A__2ND(cons(x0, sel(x1, x2))) -> c4(MARK(sel(x1, x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(x0)) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c10(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c10(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c10(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c10(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, from(0))) -> c10(A__SEL(mark(x0), a__from(0)), MARK(x0)) A__SEL(s(x0), cons(x1, from(nil))) -> c10(A__SEL(mark(x0), a__from(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c10(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, from(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, from(x2))) -> c10(A__SEL(0, a__from(mark(x2)))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c10(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c10(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c10(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c10(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, head(0))) -> c10(A__SEL(mark(x0), a__head(0)), MARK(x0)) A__SEL(s(x0), cons(x1, head(nil))) -> c10(A__SEL(mark(x0), a__head(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c10(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, head(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, head(x2))) -> c10(A__SEL(0, a__head(mark(x2)))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c10(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c10(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(0))) -> c10(A__SEL(mark(x0), a__2nd(0)), MARK(x0)) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c10(A__SEL(mark(x0), a__2nd(nil)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c10(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(s(z0))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c10(A__SEL(0, a__2nd(mark(x2)))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c10(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c10(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c10(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(0, x3))) -> c10(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c10(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c10(A__SEL(0, a__take(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c10(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(x0)) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c10(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c10(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(x0)) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c10(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(x0)) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c10(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(s(z0))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c10(MARK(x0)) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c10(A__SEL(0, a__sel(mark(x2), mark(x3)))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c10(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c10(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c10(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c10(A__SEL(mark(x0), cons(0, x3)), MARK(x0)) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c10(A__SEL(mark(x0), cons(nil, x3)), MARK(x0)) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(from(z0))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(head(z0))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(2nd(z0))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(take(z0, z1))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c10(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(sel(z0, z1))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c10(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(s(z0))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c10(MARK(cons(z0, z1))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c10(A__SEL(0, cons(mark(x2), x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(from(from(z0)))) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(from(head(z0)))) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(from(2nd(z0)))) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(from(take(z0, z1)))) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(from(sel(z0, z1)))) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(from(cons(z0, z1)))) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(from(s(z0)))) A__SEL(s(from(0)), cons(x1, x2)) -> c10(A__SEL(a__from(0), mark(x2)), MARK(from(0))) A__SEL(s(from(nil)), cons(x1, x2)) -> c10(A__SEL(a__from(nil), mark(x2)), MARK(from(nil))) A__SEL(s(from(x0)), cons(x1, x2)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, 0)) -> c10(MARK(from(x0))) A__SEL(s(from(x0)), cons(x1, nil)) -> c10(MARK(from(x0))) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(head(from(z0)))) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(head(head(z0)))) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(head(2nd(z0)))) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(head(take(z0, z1)))) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(head(sel(z0, z1)))) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(head(cons(z0, z1)))) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(head(s(z0)))) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, 0)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, nil)) -> c10(MARK(head(x0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c10(MARK(head(x0))) A__SEL(s(head(0)), cons(x1, x2)) -> c10(A__SEL(a__head(0), mark(x2))) A__SEL(s(head(nil)), cons(x1, x2)) -> c10(A__SEL(a__head(nil), mark(x2))) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(2nd(from(z0)))) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(2nd(head(z0)))) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(2nd(2nd(z0)))) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(2nd(take(z0, z1)))) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(2nd(sel(z0, z1)))) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(2nd(cons(z0, z1)))) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c10(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(2nd(s(z0)))) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, 0)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, nil)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c10(MARK(2nd(x0))) A__SEL(s(2nd(0)), cons(x1, x2)) -> c10(A__SEL(a__2nd(0), mark(x2))) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c10(A__SEL(a__2nd(nil), mark(x2))) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(take(x0, from(z0)))) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(take(x0, head(z0)))) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(take(x0, 2nd(z0)))) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, take(z0, z1)))) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(take(x0, sel(z0, z1)))) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(take(x0, cons(z0, z1)))) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(take(x0, s(z0)))) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(take(x0, 0))) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(take(x0, nil))) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(take(from(z0), x1))) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(take(head(z0), x1))) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(take(2nd(z0), x1))) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(take(z0, z1), x1))) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(take(sel(z0, z1), x1))) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(take(cons(z0, z1), x1))) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(take(s(z0), x1))) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(take(0, x1))) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(take(nil, x1))) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, 0)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, nil)) -> c10(MARK(take(x0, x1))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c10(MARK(take(x0, x1))) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(sel(x0, from(z0)))) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(sel(x0, head(z0)))) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(sel(x0, 2nd(z0)))) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, take(z0, z1)))) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(sel(x0, sel(z0, z1)))) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(sel(x0, cons(z0, z1)))) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(sel(x0, s(z0)))) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(sel(x0, 0))) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c10(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(sel(x0, nil))) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(sel(from(z0), x1))) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(sel(head(z0), x1))) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(sel(2nd(z0), x1))) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(take(z0, z1), x1))) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(sel(sel(z0, z1), x1))) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(sel(cons(z0, z1), x1))) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(sel(s(z0), x1))) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(sel(0, x1))) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c10(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(sel(nil, x1))) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, 0)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, nil)) -> c10(MARK(sel(x0, x1))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c10(MARK(sel(x0, x1))) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(s(from(z0)))) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(s(head(z0)))) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c10(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(s(2nd(z0)))) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(s(take(z0, z1)))) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(s(sel(z0, z1)))) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c10(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(s(cons(z0, z1)))) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c10(A__SEL(s(s(mark(z0))), mark(x2)), MARK(s(s(z0)))) A__SEL(s(s(0)), cons(x1, x2)) -> c10(A__SEL(s(0), mark(x2)), MARK(s(0))) A__SEL(s(s(nil)), cons(x1, x2)) -> c10(A__SEL(s(nil), mark(x2)), MARK(s(nil))) A__SEL(s(s(x0)), cons(x1, x2)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, 0)) -> c10(MARK(s(x0))) A__SEL(s(s(x0)), cons(x1, nil)) -> c10(MARK(s(x0))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(A__SEL(mark(x0), cons(mark(mark(x2)), from(s(mark(x2))))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(from(z0)))) -> c11(A__SEL(mark(x0), a__from(a__from(mark(z0)))), MARK(from(from(z0)))) A__SEL(s(x0), cons(x1, from(head(z0)))) -> c11(A__SEL(mark(x0), a__from(a__head(mark(z0)))), MARK(from(head(z0)))) A__SEL(s(x0), cons(x1, from(2nd(z0)))) -> c11(A__SEL(mark(x0), a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) A__SEL(s(x0), cons(x1, from(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) A__SEL(s(x0), cons(x1, from(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) A__SEL(s(x0), cons(x1, from(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) A__SEL(s(x0), cons(x1, from(s(z0)))) -> c11(A__SEL(mark(x0), a__from(s(mark(z0)))), MARK(from(s(z0)))) A__SEL(s(x0), cons(x1, from(0))) -> c11(A__SEL(mark(x0), a__from(0)), MARK(from(0))) A__SEL(s(x0), cons(x1, from(nil))) -> c11(A__SEL(mark(x0), a__from(nil)), MARK(from(nil))) A__SEL(s(from(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__from(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(head(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__head(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(2nd(z0)), cons(x1, from(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(take(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(sel(z0, z1)), cons(x1, from(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(s(z0)), cons(x1, from(x2))) -> c11(A__SEL(s(mark(z0)), a__from(mark(x2))), MARK(from(x2))) A__SEL(s(0), cons(x1, from(x2))) -> c11(A__SEL(0, a__from(mark(x2))), MARK(from(x2))) A__SEL(s(x0), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(cons(z0, z1)), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(nil), cons(x1, from(x2))) -> c11(MARK(from(x2))) A__SEL(s(x0), cons(x1, head(from(z0)))) -> c11(A__SEL(mark(x0), a__head(a__from(mark(z0)))), MARK(head(from(z0)))) A__SEL(s(x0), cons(x1, head(head(z0)))) -> c11(A__SEL(mark(x0), a__head(a__head(mark(z0)))), MARK(head(head(z0)))) A__SEL(s(x0), cons(x1, head(2nd(z0)))) -> c11(A__SEL(mark(x0), a__head(a__2nd(mark(z0)))), MARK(head(2nd(z0)))) A__SEL(s(x0), cons(x1, head(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__take(mark(z0), mark(z1)))), MARK(head(take(z0, z1)))) A__SEL(s(x0), cons(x1, head(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(a__sel(mark(z0), mark(z1)))), MARK(head(sel(z0, z1)))) A__SEL(s(x0), cons(x1, head(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__head(cons(mark(z0), z1))), MARK(head(cons(z0, z1)))) A__SEL(s(x0), cons(x1, head(s(z0)))) -> c11(A__SEL(mark(x0), a__head(s(mark(z0)))), MARK(head(s(z0)))) A__SEL(s(from(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__from(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(head(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__head(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(2nd(z0)), cons(x1, head(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(take(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(sel(z0, z1)), cons(x1, head(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(s(z0)), cons(x1, head(x2))) -> c11(A__SEL(s(mark(z0)), a__head(mark(x2))), MARK(head(x2))) A__SEL(s(0), cons(x1, head(x2))) -> c11(A__SEL(0, a__head(mark(x2))), MARK(head(x2))) A__SEL(s(x0), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, head(0))) -> c11(A__SEL(mark(x0), a__head(0))) A__SEL(s(x0), cons(x1, head(nil))) -> c11(A__SEL(mark(x0), a__head(nil))) A__SEL(s(cons(z0, z1)), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(nil), cons(x1, head(x2))) -> c11(MARK(head(x2))) A__SEL(s(x0), cons(x1, 2nd(from(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__from(mark(z0)))), MARK(2nd(from(z0)))) A__SEL(s(x0), cons(x1, 2nd(head(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__head(mark(z0)))), MARK(2nd(head(z0)))) A__SEL(s(x0), cons(x1, 2nd(2nd(z0)))) -> c11(A__SEL(mark(x0), a__2nd(a__2nd(mark(z0)))), MARK(2nd(2nd(z0)))) A__SEL(s(x0), cons(x1, 2nd(take(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__take(mark(z0), mark(z1)))), MARK(2nd(take(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(a__sel(mark(z0), mark(z1)))), MARK(2nd(sel(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__2nd(cons(mark(z0), z1))), MARK(2nd(cons(z0, z1)))) A__SEL(s(x0), cons(x1, 2nd(s(z0)))) -> c11(A__SEL(mark(x0), a__2nd(s(mark(z0)))), MARK(2nd(s(z0)))) A__SEL(s(from(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__from(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(head(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__head(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(2nd(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__2nd(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(take(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(sel(z0, z1)), cons(x1, 2nd(x2))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(s(z0)), cons(x1, 2nd(x2))) -> c11(A__SEL(s(mark(z0)), a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(0), cons(x1, 2nd(x2))) -> c11(A__SEL(0, a__2nd(mark(x2))), MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, 2nd(0))) -> c11(A__SEL(mark(x0), a__2nd(0))) A__SEL(s(x0), cons(x1, 2nd(nil))) -> c11(A__SEL(mark(x0), a__2nd(nil))) A__SEL(s(cons(z0, z1)), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(nil), cons(x1, 2nd(x2))) -> c11(MARK(2nd(x2))) A__SEL(s(x0), cons(x1, take(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__from(mark(z0)))), MARK(take(x2, from(z0)))) A__SEL(s(x0), cons(x1, take(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__head(mark(z0)))), MARK(take(x2, head(z0)))) A__SEL(s(x0), cons(x1, take(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__2nd(mark(z0)))), MARK(take(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, take(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__take(mark(z0), mark(z1)))), MARK(take(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(take(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), cons(mark(z0), z1))), MARK(take(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, take(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__take(mark(x2), s(mark(z0)))), MARK(take(x2, s(z0)))) A__SEL(s(x0), cons(x1, take(x2, 0))) -> c11(A__SEL(mark(x0), a__take(mark(x2), 0)), MARK(take(x2, 0))) A__SEL(s(x0), cons(x1, take(x2, nil))) -> c11(A__SEL(mark(x0), a__take(mark(x2), nil)), MARK(take(x2, nil))) A__SEL(s(x0), cons(x1, take(from(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__from(mark(z0)), mark(x3))), MARK(take(from(z0), x3))) A__SEL(s(x0), cons(x1, take(head(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__head(mark(z0)), mark(x3))), MARK(take(head(z0), x3))) A__SEL(s(x0), cons(x1, take(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__take(a__2nd(mark(z0)), mark(x3))), MARK(take(2nd(z0), x3))) A__SEL(s(x0), cons(x1, take(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__take(mark(z0), mark(z1)), mark(x3))), MARK(take(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(take(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__take(cons(mark(z0), z1), mark(x3))), MARK(take(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, take(s(z0), x3))) -> c11(A__SEL(mark(x0), a__take(s(mark(z0)), mark(x3))), MARK(take(s(z0), x3))) A__SEL(s(x0), cons(x1, take(0, x3))) -> c11(A__SEL(mark(x0), a__take(0, mark(x3))), MARK(take(0, x3))) A__SEL(s(x0), cons(x1, take(nil, x3))) -> c11(A__SEL(mark(x0), a__take(nil, mark(x3))), MARK(take(nil, x3))) A__SEL(s(from(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(head(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, take(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(s(z0)), cons(x1, take(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(0), cons(x1, take(x2, x3))) -> c11(A__SEL(0, a__take(mark(x2), mark(x3))), MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(nil), cons(x1, take(x2, x3))) -> c11(MARK(take(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, from(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__from(mark(z0)))), MARK(sel(x2, from(z0)))) A__SEL(s(x0), cons(x1, sel(x2, head(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__head(mark(z0)))), MARK(sel(x2, head(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 2nd(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__2nd(mark(z0)))), MARK(sel(x2, 2nd(z0)))) A__SEL(s(x0), cons(x1, sel(x2, take(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__take(mark(z0), mark(z1)))), MARK(sel(x2, take(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, sel(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), a__sel(mark(z0), mark(z1)))), MARK(sel(x2, sel(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, cons(z0, z1)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), cons(mark(z0), z1))), MARK(sel(x2, cons(z0, z1)))) A__SEL(s(x0), cons(x1, sel(x2, s(z0)))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), s(mark(z0)))), MARK(sel(x2, s(z0)))) A__SEL(s(x0), cons(x1, sel(x2, 0))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), 0)), MARK(sel(x2, 0))) A__SEL(s(x0), cons(x1, sel(x2, nil))) -> c11(A__SEL(mark(x0), a__sel(mark(x2), nil)), MARK(sel(x2, nil))) A__SEL(s(x0), cons(x1, sel(from(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__from(mark(z0)), mark(x3))), MARK(sel(from(z0), x3))) A__SEL(s(x0), cons(x1, sel(head(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__head(mark(z0)), mark(x3))), MARK(sel(head(z0), x3))) A__SEL(s(x0), cons(x1, sel(2nd(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(a__2nd(mark(z0)), mark(x3))), MARK(sel(2nd(z0), x3))) A__SEL(s(x0), cons(x1, sel(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__take(mark(z0), mark(z1)), mark(x3))), MARK(sel(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(a__sel(mark(z0), mark(z1)), mark(x3))), MARK(sel(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), a__sel(cons(mark(z0), z1), mark(x3))), MARK(sel(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, sel(s(z0), x3))) -> c11(A__SEL(mark(x0), a__sel(s(mark(z0)), mark(x3))), MARK(sel(s(z0), x3))) A__SEL(s(x0), cons(x1, sel(0, x3))) -> c11(A__SEL(mark(x0), a__sel(0, mark(x3))), MARK(sel(0, x3))) A__SEL(s(x0), cons(x1, sel(nil, x3))) -> c11(A__SEL(mark(x0), a__sel(nil, mark(x3))), MARK(sel(nil, x3))) A__SEL(s(from(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(head(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, sel(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(s(z0)), cons(x1, sel(x2, x3))) -> c11(A__SEL(s(mark(z0)), a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(0), cons(x1, sel(x2, x3))) -> c11(A__SEL(0, a__sel(mark(x2), mark(x3))), MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(nil), cons(x1, sel(x2, x3))) -> c11(MARK(sel(x2, x3))) A__SEL(s(x0), cons(x1, cons(from(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__from(mark(z0)), x3)), MARK(cons(from(z0), x3))) A__SEL(s(x0), cons(x1, cons(head(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__head(mark(z0)), x3)), MARK(cons(head(z0), x3))) A__SEL(s(x0), cons(x1, cons(2nd(z0), x3))) -> c11(A__SEL(mark(x0), cons(a__2nd(mark(z0)), x3)), MARK(cons(2nd(z0), x3))) A__SEL(s(x0), cons(x1, cons(take(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__take(mark(z0), mark(z1)), x3)), MARK(cons(take(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(sel(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(a__sel(mark(z0), mark(z1)), x3)), MARK(cons(sel(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(cons(z0, z1), x3))) -> c11(A__SEL(mark(x0), cons(cons(mark(z0), z1), x3)), MARK(cons(cons(z0, z1), x3))) A__SEL(s(x0), cons(x1, cons(s(z0), x3))) -> c11(A__SEL(mark(x0), cons(s(mark(z0)), x3)), MARK(cons(s(z0), x3))) A__SEL(s(x0), cons(x1, cons(0, x3))) -> c11(A__SEL(mark(x0), cons(0, x3)), MARK(cons(0, x3))) A__SEL(s(x0), cons(x1, cons(nil, x3))) -> c11(A__SEL(mark(x0), cons(nil, x3)), MARK(cons(nil, x3))) A__SEL(s(from(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__from(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(head(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__head(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(2nd(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__2nd(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(take(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__take(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(sel(z0, z1)), cons(x1, cons(x2, x3))) -> c11(A__SEL(a__sel(mark(z0), mark(z1)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(s(z0)), cons(x1, cons(x2, x3))) -> c11(A__SEL(s(mark(z0)), cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(0), cons(x1, cons(x2, x3))) -> c11(A__SEL(0, cons(mark(x2), x3)), MARK(cons(x2, x3))) A__SEL(s(x0), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(cons(z0, z1)), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(nil), cons(x1, cons(x2, x3))) -> c11(MARK(cons(x2, x3))) A__SEL(s(from(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(from(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__from(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(from(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__from(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(from(0)), cons(x1, x2)) -> c11(A__SEL(a__from(0), mark(x2)), MARK(x2)) A__SEL(s(from(nil)), cons(x1, x2)) -> c11(A__SEL(a__from(nil), mark(x2)), MARK(x2)) A__SEL(s(from(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(from(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(head(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(head(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__head(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(head(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__head(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(head(0)), cons(x1, x2)) -> c11(A__SEL(a__head(0), mark(x2)), MARK(x2)) A__SEL(s(head(nil)), cons(x1, x2)) -> c11(A__SEL(a__head(nil), mark(x2)), MARK(x2)) A__SEL(s(head(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(head(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(2nd(from(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(head(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(2nd(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(a__2nd(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(2nd(s(z0))), cons(x1, x2)) -> c11(A__SEL(a__2nd(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(2nd(0)), cons(x1, x2)) -> c11(A__SEL(a__2nd(0), mark(x2)), MARK(x2)) A__SEL(s(2nd(nil)), cons(x1, x2)) -> c11(A__SEL(a__2nd(nil), mark(x2)), MARK(x2)) A__SEL(s(2nd(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(2nd(x0)), cons(x1, x2)) -> c11(MARK(x2)) A__SEL(s(take(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(take(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(take(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__take(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(take(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__take(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__take(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(take(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(take(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(sel(x0, from(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__from(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, head(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__head(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 2nd(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__2nd(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, take(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__take(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, sel(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), a__sel(mark(z0), mark(z1))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, cons(z0, z1))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), cons(mark(z0), z1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, s(z0))), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), s(mark(z0))), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, 0)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), 0), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, nil)), cons(x2, x3)) -> c11(A__SEL(a__sel(mark(x0), nil), mark(x3)), MARK(x3)) A__SEL(s(sel(from(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__from(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(head(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__head(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(2nd(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__2nd(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(take(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__take(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(sel(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(a__sel(mark(z0), mark(z1)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(cons(z0, z1), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(cons(mark(z0), z1), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(s(z0), x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(s(mark(z0)), mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(0, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(0, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(nil, x1)), cons(x2, x3)) -> c11(A__SEL(a__sel(nil, mark(x1)), mark(x3)), MARK(x3)) A__SEL(s(sel(x0, x1)), cons(x2, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(sel(x0, x1)), cons(x2, x3)) -> c11(MARK(x3)) A__SEL(s(s(from(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__from(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(head(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__head(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(2nd(z0))), cons(x1, x2)) -> c11(A__SEL(s(a__2nd(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(take(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__take(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(sel(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(a__sel(mark(z0), mark(z1))), mark(x2)), MARK(x2)) A__SEL(s(s(cons(z0, z1))), cons(x1, x2)) -> c11(A__SEL(s(cons(mark(z0), z1)), mark(x2)), MARK(x2)) A__SEL(s(s(s(z0))), cons(x1, x2)) -> c11(A__SEL(s(s(mark(z0))), mark(x2)), MARK(x2)) A__SEL(s(s(0)), cons(x1, x2)) -> c11(A__SEL(s(0), mark(x2)), MARK(x2)) A__SEL(s(s(nil)), cons(x1, x2)) -> c11(A__SEL(s(nil), mark(x2)), MARK(x2)) A__SEL(s(s(x0)), cons(x1, s(z0))) -> c11(MARK(s(z0))) A__SEL(s(0), cons(x0, s(z0))) -> c11(MARK(s(z0))) MARK(head(from(x0))) -> c14(A__HEAD(cons(mark(mark(x0)), from(s(mark(x0))))), MARK(from(x0))) MARK(head(from(from(z0)))) -> c14(A__HEAD(a__from(a__from(mark(z0)))), MARK(from(from(z0)))) MARK(head(from(head(z0)))) -> c14(A__HEAD(a__from(a__head(mark(z0)))), MARK(from(head(z0)))) MARK(head(from(2nd(z0)))) -> c14(A__HEAD(a__from(a__2nd(mark(z0)))), MARK(from(2nd(z0)))) MARK(head(from(take(z0, z1)))) -> c14(A__HEAD(a__from(a__take(mark(z0), mark(z1)))), MARK(from(take(z0, z1)))) MARK(head(from(sel(z0, z1)))) -> c14(A__HEAD(a__from(a__sel(mark(z0), mark(z1)))), MARK(from(sel(z0, z1)))) MARK(head(from(cons(z0, z1)))) -> c14(A__HEAD(a__from(cons(mark(z0), z1))), MARK(from(cons(z0, z1)))) MARK(head(from(s(z0)))) -> c14(A__HEAD(a__from(s(mark(z0)))), MARK(from(s(z0)))) MARK(head(from(0))) -> c14(A__HEAD(a__from(0)), MARK(from(0))) MARK(head(from(nil))) -> c14(A__HEAD(a__from(nil)), MARK(from(nil))) MARK(head(from(x0))) -> c14(MARK(from(x0))) K tuples:none Defined Rule Symbols: a__from_1, a__head_1, a__2nd_1, a__take_2, a__sel_2, mark_1 Defined Pair Symbols: A__FROM_1, A__HEAD_1, A__TAKE_2, A__SEL_2, MARK_1, A__2ND_1 Compound Symbols: c_1, c2_1, c7_1, c9_1, c13_2, c20_1, c21_1, c4_2, c4_1, c10_1, c11_1, c14_2, c14_1, c15_2, c15_1, c16_2, c16_1, c17_2, c17_1, c18_2, c18_1, c19_2, c19_1, c10_2, c11_2